غير قادر على تحرير الموضوع عبر واجهة برمجة التطبيقات على الرغم من الوصول للكتابة في الموضوع

مرحباً بالجميع،

لاحظت أنه على الرغم من امتلاكي صلاحية “Topic Write”، إلا أنني لا أستطيع تعديل عنوان الموضوع.
يبدو أن هذا يعمل فقط عندما يكون مفتاح واجهة برمجة التطبيقات (API) له نطاق عالمي.

مع مفتاح واجهة برمجة التطبيقات (API) الذي لديه نطاقات الأذونات التالية:

أحصل على:

curl 'https://__NAME__.discourse.team/t/-/19.json' \
  -H "Api-Key: 3990a1..." \
  -H "Api-Username: system" \
  -H "Content-Type: application/json" \
  -X PUT \
  -d "{ \"title\": \"Title - test curl v5\" }"

{"errors":["You are not permitted to view the requested resource. The API username or key is invalid."],"error_type":"invalid_access"}

وأحصل على نفس الاستجابة عند تحديد جميع النطاقات المحددة.

فقط عند إنشاء مفتاح واجهة برمجة تطبيقات (API) مع النطاق: عالمي، أتمكن من تعديل عنوان الموضوع:

curl 'https://__NAME__.discourse.team/t/-/19.json' \
  -H "Api-Key: 0adc49d..." \
  -H "Api-Username: system" \
  -H "Content-Type: application/json" \
  -X PUT \
  -d "{ \"title\": \"Title - test curl v5\" }"

{"basic_topic":{"id":19,"title":"Title - test curl v5","fancy_title":"Title - test curl v5","slug":"title-test-curl-v5","posts_count":2}}

أتوقع أن تدعم صلاحية “Topic Write” عملية التعديل. يبدو لي أن فرض النطاق العالمي لذلك ليس مرغوبًا فيه.

إعجابَين (2)

هل تحاول كتابة موضوع جديد أم تعديل موضوع موجود؟

@pfaffman أحاول تعديل عنوان الموضوع عبر نقطة نهاية تحديث الموضوع Discourse API Docs

إعجابَين (2)

سأبحث في نطاق واجهة برمجة التطبيقات (API) لهذا. تخميني هو أنها تنظر فقط إلى طلب POST ولا تنظر إلى طلب PUT للتحديث.

إعجاب واحد (1)

هناك الآن نطاق تحديث الموضوع يمكنك استخدامه لهذا.\n\n

\n\n\ncurl -i -sS -X PUT \"http://localhost:4200/t/-/101.json\" \\\n-H \"Content-Type: multipart/form-data\" \\\n-H \"Api-Key: 54096675ed84dcf0016a3b05199cccde67e5175057e53f8e005e2625940a15e6\" \\\n-H \"Api-Username: blake.erickson\" \\\n-F \"title=8bd599 cae3dfdbf 7210753\"\n\nHTTP/1.1 200 OK\n

5 إعجابات