عیب یابی مشکلات احراز هویت و مجوز

این صفحه برخی از مشکلات رایجی را که ممکن است در مورد احراز هویت و مجوز با آنها مواجه شوید، توضیح می دهد.

This app isn't verified

اگر صفحه رضایت OAuth اخطار «این برنامه تأیید نشده است» را نشان می‌دهد، برنامه شما دامنه‌هایی را درخواست می‌کند که دسترسی به داده‌های حساس کاربر را فراهم می‌کند. اگر برنامه شما از دامنه های حساس استفاده می کند، برنامه شما باید مراحل تأیید را طی کند تا آن هشدار و سایر محدودیت ها حذف شود. در مرحله توسعه، می‌توانید با انتخاب Advanced > Go to {Project Name} (ناامن) از این هشدار عبور کنید.

File not found error for credentials.json

هنگام اجرای نمونه کد، ممکن است پیام خطای "فایل یافت نشد" یا "هیچ فایلی وجود ندارد" را در رابطه با credentials.json دریافت کنید.

این خطا زمانی رخ می دهد که شما اعتبار برنامه دسکتاپ را مجاز نکرده باشید. برای یادگیری نحوه ایجاد اعتبارنامه برای یک برنامه دسکتاپ، به Create credentials بروید.

پس از ایجاد اعتبارنامه، مطمئن شوید که فایل JSON دانلود شده به عنوان credentials.json ذخیره شده است. سپس فایل را به پوشه کاری خود منتقل کنید.

Token has been expired or revoked

هنگام اجرای نمونه کد، ممکن است پیغام خطای "Token is expired" یا "Token has been revokuar" دریافت کنید.

این خطا زمانی رخ می دهد که یک نشانه دسترسی از سرور مجوز Google منقضی شده باشد یا باطل شده باشد. برای اطلاعات در مورد علل و راه‌حل‌های احتمالی، به انقضای نشانه Refresh مراجعه کنید.

خطاهای پایتون

در زیر برخی از خطاهای رایج پایتون آورده شده است.

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

این خطا می تواند در Mac OSX رخ دهد که در آن نصب پیش فرض six ماژول (وابستگی کتابخانه پایتون) قبل از نصبی که پیپ نصب شده بارگذاری می شود. برای رفع مشکل، محل نصب پیپ را به متغیر محیطی سیستم PYTHONPATH اضافه کنید:

  1. محل نصب پیپ را تعیین کنید:

    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 زمانی رخ می دهد که پیپ سعی می کند بسته six از پیش نصب شده را ارتقا دهد. برای حل این مشکل، پرچم --ignore-installed six به دستور pip install اضافه کنید.

،

این صفحه برخی از مشکلات رایجی را که ممکن است در مورد احراز هویت و مجوز با آنها مواجه شوید، توضیح می دهد.

This app isn't verified

اگر صفحه رضایت OAuth اخطار «این برنامه تأیید نشده است» را نشان می‌دهد، برنامه شما دامنه‌هایی را درخواست می‌کند که دسترسی به داده‌های حساس کاربر را فراهم می‌کند. اگر برنامه شما از دامنه های حساس استفاده می کند، برنامه شما باید مراحل تأیید را طی کند تا آن هشدار و سایر محدودیت ها حذف شود. در مرحله توسعه، می‌توانید با انتخاب Advanced > Go to {Project Name} (ناامن) از این هشدار عبور کنید.

File not found error for credentials.json

هنگام اجرای نمونه کد، ممکن است پیام خطای "فایل یافت نشد" یا "هیچ فایلی وجود ندارد" را در رابطه با credentials.json دریافت کنید.

این خطا زمانی رخ می دهد که شما اعتبار برنامه دسکتاپ را مجاز نکرده باشید. برای یادگیری نحوه ایجاد اعتبارنامه برای یک برنامه دسکتاپ، به Create credentials بروید.

پس از ایجاد اعتبارنامه، مطمئن شوید که فایل JSON دانلود شده به عنوان credentials.json ذخیره شده است. سپس فایل را به پوشه کاری خود منتقل کنید.

Token has been expired or revoked

هنگام اجرای نمونه کد، ممکن است پیغام خطای "Token is expired" یا "Token has been revokuar" دریافت کنید.

این خطا زمانی رخ می دهد که یک نشانه دسترسی از سرور مجوز Google منقضی شده باشد یا باطل شده باشد. برای اطلاعات در مورد علل و راه‌حل‌های احتمالی، به انقضای نشانه Refresh مراجعه کنید.

خطاهای پایتون

در زیر برخی از خطاهای رایج پایتون آورده شده است.

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

این خطا می تواند در Mac OSX رخ دهد که در آن نصب پیش فرض six ماژول (وابستگی کتابخانه پایتون) قبل از نصبی که پیپ نصب شده بارگذاری می شود. برای رفع مشکل، محل نصب پیپ را به متغیر محیطی سیستم PYTHONPATH اضافه کنید:

  1. محل نصب پیپ را تعیین کنید:

    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 زمانی رخ می دهد که پیپ سعی می کند بسته six از پیش نصب شده را ارتقا دهد. برای حل این مشکل، پرچم --ignore-installed six به دستور pip install اضافه کنید.