Memecahkan masalah autentikasi dan otorisasi

Halaman ini menjelaskan beberapa masalah umum yang mungkin Anda alami terkait autentikasi dan otorisasi.

This app isn't verified

Jika layar izin OAuth menampilkan peringatan "Aplikasi ini tidak diverifikasi", aplikasi Anda meminta cakupan yang memberikan akses ke data pengguna sensitif. Jika aplikasi Anda menggunakan cakupan sensitif, aplikasi Anda harus melalui proses verifikasi untuk menghapus peringatan tersebut dan batasan lainnya. Selama fase pengembangan, Anda dapat melanjutkan melewati peringatan ini dengan memilih Lanjutan > Buka {Project Name} (tidak aman).

File not found error for credentials.json

Saat menjalankan contoh kode, Anda mungkin menerima pesan error "file not found" atau "no such file" terkait credentials.json.

Error ini terjadi jika Anda belum memberikan otorisasi kredensial aplikasi desktop. Untuk mempelajari cara membuat kredensial untuk aplikasi desktop, buka Membuat kredensial.

Setelah Anda membuat kredensial, pastikan file JSON yang didownload disimpan sebagai credentials.json. Kemudian, pindahkan file ke direktori kerja Anda.

Token has been expired or revoked

Saat menjalankan contoh kode, Anda mungkin menerima pesan error "Token has been expired" atau "Token has been revoked".

Error ini terjadi saat masa berlaku token akses dari Server Otorisasi Google telah berakhir atau telah dicabut. Untuk mengetahui informasi tentang kemungkinan penyebab dan perbaikan, lihat Masa berlaku token refresh.

Error Python

Berikut adalah beberapa error Python yang umum.

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

Error ini dapat terjadi di Mac OSX saat penginstalan default modul six (dependensi library Python) dimuat sebelum modul yang diinstal pip. Untuk memperbaiki masalah ini, tambahkan lokasi penginstalan pip ke variabel lingkungan sistem PYTHONPATH:

  1. Tentukan lokasi penginstalan pip:

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

    Catat lokasi ini karena diperlukan untuk langkah berikutnya.

  2. Tambahkan baris berikut ke file ~/.bashrc Anda, dengan mengganti INSTALL_PATH dengan lokasi yang ditentukan dari langkah sebelumnya:

    export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
    
  3. Muat ulang file ~/.bashrc:

    source ~/.bashrc
    

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

Error ini disebabkan oleh bug di httplib2. Untuk mengatasi masalah ini, upgrade ke httplib2 versi terbaru:

pip install --upgrade httplib2

Cannot uninstall 'six'

Saat menjalankan perintah pip install, Anda mungkin menerima error berikut:

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.

Error ini terjadi di Mac OSX saat pip mencoba mengupgrade paket six yang telah diinstal sebelumnya. Untuk mengatasi masalah ini, tambahkan flag --ignore-installed six ke perintah pip install.