Memecahkan masalah autentikasi dan otorisasi

Halaman ini menjelaskan beberapa masalah umum yang mungkin Anda temui 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 harus melalui proses verifikasi untuk menghapus peringatan tersebut dan batasan lainnya. Selama fase pengembangan, Anda dapat melanjutkan peringatan ini dengan memilih Advanced > Go to {Project Name} (unsafe).

File not found error for credentials.json

Saat menjalankan contoh kode, Anda mungkin menerima pesan error "file tidak ditemukan" atau "tidak ada file semacam itu" terkait credentials.json.

Error ini terjadi saat Anda belum mengizinkan 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 telah habis masa berlakunya" atau "Token telah dicabut".

Error ini terjadi saat token akses dari Server Otorisasi Google sudah tidak berlaku 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 tempat penginstalan default modul six (dependensi library Python) dimuat sebelum penginstalan yang diinstal pip. Untuk memperbaiki masalah ini, tambahkan lokasi penginstalan pip ke variabel lingkungan sistem PYTHONPATH:

  1. Menentukan 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 Anda:

    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 sudah diinstal sebelumnya. Untuk mengatasi masalah ini, tambahkan flag --ignore-installed six ke perintah pip install.