إنشاء وتكوين مفتاح API

تُنشأ مفاتيح واجهة برمجة التطبيقات (API) من صفحة المسؤول / واجهة برمجة التطبيقات (Admin / API). انتقل إلى المسؤول-متقدم-مفاتيح واجهة برمجة التطبيقات (Admin-Advanced-API Keys):

بعد النقر فوق الزر “مفتاح واجهة برمجة تطبيقات جديد” (New API Key)، ستنتقل إلى صفحة لتكوين المفتاح:

يحتاج كل مفتاح واجهة برمجة تطبيقات إلى وصف ومستوى مستخدم ونطاق.

الوصف

يمكن أن يكون الوصف أي شيء تختاره.

مستوى المستخدم

يتيح لك القائمة المنسدلة لمستوى المستخدم (User Level) تحديد “جميع المستخدمين” (All Users) أو “مستخدم واحد” (Single User). إذا تم تحديد “جميع المستخدمين”، يمكن استخدام المفتاح نيابة عن أي مستخدم. يتم ذلك عن طريق تعيين المستخدم الذي تطلب نيابة عنه كـ Api-Username في رؤوس الطلب. (راجع مثال المصادقة في وثائق واجهة برمجة التطبيقات للحصول على تفاصيل حول كيفية تعيين رؤوس الطلب.)

إذا تم تحديد “مستخدم واحد”، فسيظهر حقل مستخدم في النموذج. أدخل اسم المستخدم الذي تقوم بإنشاء مفتاح واجهة برمجة التطبيقات له في هذا الحقل:

النطاق

تتيح لك القائمة المنسدلة للنطاق (Scope) تحديد “مفصل” (Granular) أو “للقراءة فقط” (Read-only) أو “عالمي” (Global) كنطاق.

إذا تم تحديد “للقراءة فقط” كنطاق، فلن يتمكن مفتاح واجهة برمجة التطبيقات إلا من استخدامه لإجراء طلبات GET. سيكون المفتاح قادرًا على إجراء أي طلبات GET يمتلك المستخدم الذي تم إنشاء المفتاح له، أو اسم المستخدم الذي تم إدخاله كـ Api-Username للطلب، الإذن بتنفيذها.

إذا تم تحديد “عالمي” كنطاق، فيمكن استخدام المفتاح لـ أي طلبات يمتلك المستخدم الذي تم إنشاء المفتاح له، أو اسم المستخدم الذي تم إدخاله كـ Api-Username للطلب، الإذن بتنفيذها.

إذا تم تحديد “مفصل” كنطاق، فسيتم فتح نموذج يسمح لك بالاختيار من بين النطاقات المتاحة. مرر مؤشر الماوس فوق أيقونة علامة الاستفهام الخاصة بالنطاق لرؤية وصف للنطاق. انقر فوق أيقونة الرابط الخاصة بالنطاق لرؤية قائمة بالمسارات وطرق الطلب التي يدعمها النطاق. لاحظ أن العديد من النطاقات تسمح لك بإدخال معلمة إضافية لتحديد المسارات على الموقع التي سيسمح النطاق بالوصول إليها:

بعد تكوين مفتاح واجهة برمجة التطبيقات والنقر فوق الزر “حفظ” (Save)، سيتم عرض مفتاح واجهة برمجة التطبيقات الكامل لك مرة واحدة. تأكد من نسخ المفتاح لأنه لا توجد طريقة لعرض المفتاح الكامل مرة أخرى.

:information_source: لا يمكن لنطاقات واجهة برمجة التطبيقات في Discourse إلا تقييد الإجراءات التي يمكن لمفتاح واجهة برمجة التطبيقات تنفيذها بالنسبة للأذونات الحالية للمستخدم. لا يمكنها منح أذونات إضافية تتجاوز ما يمتلكه المستخدم المرتبط بالفعل.

قراءة إضافية

تفاصيل حول حدود المعدل التي يطبقها Discourse على مفاتيح واجهة برمجة التطبيقات: حدود المعدل العالمية والتنظيم في Discourse.

وثائق واجهة برمجة التطبيقات لـ Discourse: https://docs.discourse.org/.

دليل مفيد لتحديد كيفية هيكلة طلبات واجهة برمجة التطبيقات: كيفية هندسة واجهة برمجة تطبيقات Discourse العكسية.

5 إعجابات

قد يحتاج هذا الموضوع إلى تحديث. يمكنني القيام بذلك قريبًا إذا لم يسبقني أحد.

اختبار هذا باستخدام أحدث متصفح Chrome على Ubuntu، سواء على موقع تطوير محلي أو موقع Discourse مستضاف، لم يعد يتم عرض تلميح الأدوات عند تمرير مؤشر الماوس فوق أيقونة :question:.

بشكل غير متوقع، تم اكتشاف هذا بالفعل في وقت سابق اليوم. أعتقد أن هناك إصلاحًا قيد العمل عليه :crossed_fingers:

إعجابَين (2)

الصورتان الأوليان لكيفية إنشاء مفتاح واجهة برمجة التطبيقات لا يتم تحميلهما!

مع التغييرات التي طرأت على تخطيط إعدادات المسؤول، لا يمكنني العثور على مكان لإنشاء هذا.

تم ذكر هذا بالفعل في Missing images at Meta.discourse.org - #6 by Lilly

أعتقد أنه يمكنك رؤيتها هنا https://web.archive.org/web/20221205183753/https://meta.discourse.org/t/create-and-configure-an-api-key/230124

إعجابَين (2)

تم العثور على موقع لوحة المعلومات الجديدة في القائمة المنسدلة لإعدادات المسؤول - متقدم - مفاتيح API

تم الإصلاح. تمت إضافة لقطة شاشة لموقع قائمة المسؤول الجديدة أيضًا.

شكرًا @Moin

4 إعجابات