بعض نقاط النهاية لا تتطلب أي مصادقة، وأي شيء آخر تقريبًا سيتطلب منك المصادقة. لتصبح مصادقًا، ستحتاج إلى إنشاء مفتاح واجهة برمجة تطبيقات من لوحة المسؤول.
هذا أمر مؤسف، لأن هناك الكثير من الاستخدامات المشروعة لواجهة برمجة التطبيقات
التي يمكن للمستخدمين العاديين الاستفادة منها، وليس فقط المسؤولين.
على سبيل المثال، مهمة مجدولة شهرية قد يقوم المستخدم بإعدادها لتنزيل تفضيلاته.json بدلاً من النقر فوق تنزيل في التفضيلات (Backup/export/import Preferences).
أقول إن هناك حاجة إلى تغيير في الكود المصدري، لذلك سيتمكن المستخدمون قريبًا في جميع أنحاء العالم من الوصول إلى واجهة برمجة التطبيقات الخاصة بـ Discourse المحلي الذي يستخدمونه، للحصول على بياناتهم الشخصية، وما إلى ذلك.
ومع ذلك، بدون دعم من المسؤولين ونقطة نهاية معتمدة في إعدادات موقع مفاتيح واجهة برمجة تطبيقات المستخدم، لا يزال “المستخدمون العاديون” غير قادرين على إنشاء مفاتيح واجهة برمجة التطبيقات الخاصة بهم.
هذا الرد غير صحيح. يمكن لأي مستخدم إنشاء مفتاح واجهة برمجة تطبيقات للمستخدم إذا كان إنشاء مفاتيح واجهة برمجة التطبيقات للمستخدم ممكّنًا لمستوى ثقة المستخدم. إذا لم تقم بتعيين إعادة توجيه في حمولة الطلب، فسيتم عرض استجابة مشفرة بتنسيق base64 في المتصفح تحتوي على المفتاح.
راجع هذا الموضوع للحصول على نص برمجي يوضح كيفية القيام بذلك.
أفكر في الحالة الافتراضية حيث قام الشخص “أ” بتثبيت Discourse،
والشخص “ب” هو مجرد مستخدم بسيط على Discourse الخاص بالشخص “أ”،
ولم يقم “أ” بتغيير أي إعدادات إدارية، هل لا يزال بإمكان “ب” فعل الكثير باستخدام واجهة برمجة التطبيقات (API)؟
يتم تمكين إنشاء مفتاح واجهة برمجة تطبيقات المستخدم لجميع المستخدمين افتراضيًا، ويمكنك القيام بكل ما يمكنك القيام به من خلال الواجهة الأمامية للويب من خلال واجهة برمجة التطبيقات لأن الواجهة الأمامية للويب هي مجرد واجهة أمامية لواجهة برمجة التطبيقات.
أستخدمها شخصيًا في امتداد في Chrome يحتفظ بإجمالي تشغيلي لجميع إشعاراتي غير المقروءة عبر جميع المثيلات التي لدي حسابات عليها مع بعض الاستثناءات.
إذا كان لدى المستخدم حساب على مثيل Discourse بالفعل، فيجب أن يكون قادرًا على استخدام نفس مصادقة ملف تعريف الارتباط من المتصفح في أي طلبات واجهة برمجة تطبيقات غير متصفح.