API:Login/ar

ربما تتطلب واجهة برمجة تطبيقات ميدياويكي من تطبيقك أو جهازك العميل تقديم بيانات اعتماد مستخدم مصدّقة وتسجيل الدخول لأغراض (أ) الاستعلام عن معلومات أو تصرفات تعدّل بيانات أو (ب) إجراء استعلامات ضخمة الحجم ينتج عنها طلبات تتخطى الحد الأقصى.



استخدام سبيلين اثنين للتصديق
يوجد سبيلين اثنين للتصديق على واجهة برمجة التطبيقات لتطبيق Action على ميدياويكي:



الطريقة الأولى: تسجيل الدخول login
يجب على البوتات والتطبيقات غير التفاعلية استخدام مستهلكي OAuth من الملاك فقط لو كان ذلك متوفرا منذ انه يتمتع بأمان أكبر. لو كان هذا غير متوافر أو لا ينطبق على الجهاز العميل، يجوز استخدام  مع كلمات مرور البوتات.



مثال


النتيجة


عينة من الكود البرمجي


الأخطاء المحتملة


الطريقة الثانية: تسجيل الدخول clientlogin
يجب أن تستخدم التطبيقات التفاعلية من قبيل المحررات المخصصة أو تطبيقات المراجعة التي تقدم خدمة ليس الغرض منها أن تكون بديلا كاملا عن الموقع الشبكي أو تطبيقات الأجهزة المحمولة التي تستهدف أن تحل بالكامل محل الوصول إلى واجهة المستخدم عبر الوب تصرف. إلا أن على المرء أن يفضل استخدام لو كان متوفرًا لأغراض تصديق الأداة ذاتها، منذ أنه أيسر في الاستخدام وآمن كذلك. هذه الوحدة البرمجية متوفرة منذ إصدار ميدياويكي 1.27.



توثيق واجهة برمجة التطبيقات


مثال 1: عملية لموقع ويكي لا يحتوي على امتدادات تصديق خاصة


طلب POST
الحصول على رمز تسجيل الدخول في الطلب سالف الذكر مستخدمًا.

النتيجة


عينة من الكود البرمجي


مثال 2: عملية لموقع ويكي يحتوي على امتدادات تصديق خاصة
قد يكون الأمر لموقع ويكي يحتوي على امتدادات تصديق خاصة مثل (كابتشا) أو  أو  (التصديق باستخدام عنصرين اثنين) عملية تصديق أكثر تعقيدًا. كما قد يتطلب الأمر خانات محددة في تلك الحالة، ويمكن استجلاب بيان هذه من استعلام.



الخطوة الأولى: الإجابة على Captcha واختيار تصديق OpenID


الخطوة الثانية: العودة من OpenID


الخطوة الثالثة: التصديق باستخدام عنصرين اثنين
ملاحظة: من الممكن في بعض الحالات المعينة تلقي رد ، على سبيل المثال لو كان امتداد OpenID Connect لم يكن يحتوي على ربط لحساب OpenID مرتبط بحساب مستخدم محلي. في هذه الحالة ربما يلجأ الجهاز العميل لبدء عملية تسجيل الدخول من جديد أو ربما ينتقل إلى واجهة إنشاء حساب، في أيّ من الحالتين مرر متغير loginpreservestate أو createpreservestate كي تحافظ على مقدار من الحالة.



ملاحظات إضافية

 * من الممكن على مواقع الويكي التي تسمح بالتعديل دون تسجيل دخول تعديل واجهة برمجة التطبيقات دون تسجيل الدخول، إلا أننا ننصح بشدة أن تسجل الدخول. فيما يخص مواقع الويكي الخصوصية، يتطلب الأمر تسجيل الدخول كي تستخدم أي من وظائف واجهة برمجة التطبيقات.
 * نحبّذ إنشاء حساب مستخدم لتطبيقك. هذا الأمر يحمل أهمية خاصة لو كان تطبيقك ينهض بأعمال تعديل آلية أو يبدأ استعلامات ضخمة الحجم أو تتطلب موارد ضخمة. بهذه الطريقة يسهل تتبع التغييرات التي يجريها التطبيق ومن ثم فرض حقوق خاصة على حساب التطبيق.
 * لو كنت ترسل طلب يجب أن يرسله مستخدم مسجل الدخول، أضف المتغير  إلى الطلب الذي ترسله كي تتحقق من أن المستخدم مسجل الدخول أم لا. لو كان المستخدم غير مسجل الدخول، سوف يرد الطلب كود الخطأ   إليك.
 * لو كنت تريد أن تتحقق من أن حساب ما يتمتع بحقوق بوت، أضف المتغير  إلى الطلب. لو كان الحساب لا يتمتع بحقوق بوت، سوف يرد الطلب كود الخطأ   إليك.

<span id="See_also">

انظر أيضا

 * - يرد معلومات عن المستخدم مسجل الدخول حاليًا
 * Interactive login with action=clientlogin in mwapi
 * Interactive login with action=clientlogin in mwapi