تحديد المشاكل في المصادقة والتفويض وحلّها

توضّح هذه الصفحة بعض المشاكل الشائعة التي قد تواجهها بشأن المصادقة والتفويض.

This app isn't verified

إذا عرضت شاشة موافقة OAuth التحذير "لم يتم التحقّق من هذا التطبيق"، يعني ذلك أنّ تطبيقك يطلب نطاقات تتيح الوصول إلى بيانات المستخدمين الحسّاسة. إذا كان تطبيقك يستخدم نطاقات حسّاسة، يجب أن يخضع لعملية التحقّق لإزالة هذا التحذير والقيود الأخرى. أثناء مرحلة التطوير، يمكنك تجاوز هذا التحذير من خلال النقر على خيارات متقدمة > الانتقال إلى {اسم المشروع} (غير آمن).

File not found error for credentials.json

عند تشغيل نموذج الرمز، قد تظهر لك رسالة الخطأ "تعذّر العثور على الملف" أو "لا يوجد ملف بهذا الاسم" بشأن ملف credentials.json.

يحدث هذا الخطأ عندما لا تكون قد منحت الإذن باستخدام بيانات اعتماد تطبيق سطح المكتب. للتعرّف على كيفية إنشاء بيانات اعتماد لتطبيق على الكمبيوتر، انتقِل إلى إنشاء بيانات اعتماد.

بعد إنشاء بيانات الاعتماد، تأكَّد من حفظ ملف JSON الذي تم تنزيله باسم credentials.json. بعد ذلك، انقل الملف إلى دليل العمل.

Token has been expired or revoked

عند تشغيل نموذج الرمز البرمجي، قد تظهر لك رسالة الخطأ "انتهت صلاحية الرمز المميّز" أو "تم إبطال الرمز المميّز".

يحدث هذا الخطأ عندما تنتهي صلاحية رمز الدخول من خادم تفويض Google أو يتم إبطاله. للحصول على معلومات حول الأسباب المحتملة والحلول، يُرجى الاطّلاع على انتهاء صلاحية الرمز المميّز لإعادة التحميل.

أخطاء JavaScript

في ما يلي بعض أخطاء JavaScript الشائعة.

Error: origin_mismatch

يحدث هذا الخطأ أثناء عملية منح الإذن إذا كان المضيف والمنفذ المستخدَمان لعرض صفحة الويب لا يتطابقان مع مصدر JavaScript مسموح به في مشروعك على Google Cloud Console. تأكَّد من ضبط مصدر JavaScript معتمَد ومن أنّ عنوان URL في المتصفّح يتطابق مع عنوان URL الخاص بالمصدر.

idpiframe_initialization_failed: Failed to read the 'localStorage' property from 'Window'

يحدث هذا الخطأ عندما لا يكون خيار ملفات تعريف الارتباط التابعة لجهات خارجية وتخزين البيانات مفعّلاً في متصفّحك. تتطلّب مكتبة "تسجيل الدخول باستخدام Google" توفّر هذه الخيارات. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة ملفات تعريف الارتباط التابعة لجهات خارجية وتخزين البيانات.

idpiframe_initialization_failed: Not a valid origin for the client

يحدث هذا الخطأ عندما لا يتطابق النطاق المسجّل مع النطاق المستخدَم لاستضافة صفحة الويب. تأكَّد من أنّ المصدر الذي سجّلته يتطابق مع عنوان URL في المتصفّح.

أخطاء Python

AttributeError: 'Module_six_moves_urllib_parse' object has no attribute 'urlparse'

يمكن أن يحدث هذا الخطأ في نظام التشغيل Mac OSX عندما يتم تحميل عملية التثبيت التلقائية لوحدة six (وهي إحدى التبعيات لمكتبة Python) قبل عملية التثبيت التي أجراها pip. لإصلاح المشكلة، أضِف موقع تثبيت pip إلى PYTHONPATH متغيّر بيئة النظام:

  1. تحديد موقع تثبيت pip:

    pip show six | grep "Location:" | cut -d " " -f2
    

    دوِّن هذا الموقع الجغرافي لأنّك ستحتاج إليه في الخطوة التالية.

  2. أضِف السطر التالي إلى ملف ~/.bashrc، مع استبدال INSTALL_PATH بالموقع الجغرافي الذي تم تحديده في الخطوة السابقة:

    export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
    
  3. أعِد تحميل ملف ~/.bashrc:

    source ~/.bashrc
    

TypeError: sequence item 0: expected str instance, bytes found

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

pip install --upgrade httplib2

Cannot uninstall 'six'

عند تنفيذ الأمر pip install، قد يظهر لك الخطأ التالي:

Cannot uninstall 'six'. It is a distutils installed project and thus we
cannot accurately determine which files belong to it which would lead to
only a partial uninstall.

يحدث هذا الخطأ على نظام التشغيل Mac OSX عندما تحاول أداة pip ترقية الحزمة المثبَّتة مسبقًا six. لحلّ هذه المشكلة، أضِف العلامة --ignore-installed six إلى الأمر pip install.