يجب استدعاء طريقة المصادقة هذه أو طريقة أخرى قبل استدعاء ee.initialize().
يُرجى العِلم أنّه إذا لم يسبق للمستخدم منح إذن الوصول إلى التطبيق الذي يحدّده معرّف العميل، سيحاول هذا الإجراء تلقائيًا عرض نافذة حوار تطلب من المستخدم منح الإذن المطلوب. ومع ذلك، يمكن للمتصفّح حظر هذه النافذة المنبثقة. لتجنُّب ذلك، حدِّد وظيفة معاودة الاتصال opt_onImmediateFailed، ثم اعرض فيها زر تسجيل الدخول داخل الصفحة، ثم استدعِ ee.data.authenticateViaPopup() من معالج حدث النقر لهذا الزر. يؤدي ذلك إلى منع المتصفّح من حظر النافذة المنبثقة، لأنّها أصبحت الآن نتيجة مباشرة لإجراء من المستخدم.
سيتم تلقائيًا إعادة تحميل رمز المصادقة المميّز كلما أمكن ذلك. يمكنك الافتراض بأمان أنّه سيتم إرسال جميع طلبات البيانات غير المتزامنة باستخدام بيانات الاعتماد المناسبة. بالنسبة إلى عمليات الاستدعاء المتزامنة، عليك التحقّق من توفّر رمز مميّز للمصادقة باستخدام ee.data.getAuthToken() واستدعاء ee.data.refreshAuthToken() يدويًا في حال عدم توفّره. عملية إعادة إنشاء الرمز المميز غير متزامنة ولا يمكن تنفيذها في الخلفية عند الطلب قبل إجراء المكالمات المتزامنة.
| الاستخدام | المرتجعات |
|---|---|
ee.data.authenticateViaOauth(clientId, success, error, extraScopes, onImmediateFailed, suppressDefaultScopes) |
| الوسيطة | النوع | التفاصيل |
|---|---|---|
clientId | سلسلة | معرّف عميل OAuth الخاص بالتطبيق، أو القيمة null لإيقاف المكالمات التي تتطلّب مصادقة ويمكن الحصول على ذلك من خلال Google Developers Console. يجب أن يتضمّن المشروع مصدر JavaScript يتوافق مع النطاق الذي يتم تشغيل البرنامج النصي فيه. |
success | الوظيفة | الدالة التي سيتم استدعاؤها في حال نجاح المصادقة. |
error | الوظيفة، اختيارية | الدالة التي سيتم استدعاؤها في حال تعذُّر المصادقة، وتم تمرير رسالة الخطأ إليها. في حال تعذُّر المصادقة في الوضع الفوري (في الخلفية) وتم تحديد opt_onImmediateFailed، يتم استدعاء هذه الدالة بدلاً من opt_error. |
extraScopes | List[String]، اختيارية | نطاقات OAuth إضافية يجب طلبها. |
onImmediateFailed | الوظيفة، اختيارية | الدالة التي سيتم استدعاؤها في حال تعذُّر المصادقة التلقائية في الخلفية. يتم ضبط القيمة التلقائية على ee.data.authenticateViaPopup()، ويتم ربطها بعمليات معاودة الاتصال التي تم تمريرها. |
suppressDefaultScopes | قيمة منطقية، اختيارية | عندما تكون القيمة صحيحة، يتم طلب النطاقات المحدّدة في opt_extraScopes فقط، ولا يتم طلب النطاقات التلقائية ما لم يتم تحديدها بشكل صريح في opt_extraScopes. |