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

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

This app isn't verified

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

File not found error for credentials.json

عند تشغيل عيّنة الرمز، قد تتلقّى رسالة خطأ "لم يتم العثور على الملف" أو "لا يوجد هذا الملف" في ملفcredential.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.