Na tej stronie znajdziesz opis kilku częstych problemów związanych z uwierzytelnianiem i autoryzacją.
This app isn't verified
Jeśli na ekranie zgody OAuth wyświetla się ostrzeżenie „Ta aplikacja nie została zweryfikowana”, oznacza to, że aplikacja prosi o zakresy, które dają dostęp do poufnych danych użytkownika. Jeśli Twoja aplikacja używa zakresów wrażliwych, musi przejść proces weryfikacji, aby usunąć to ostrzeżenie i inne ograniczenia. Na etapie programowania możesz pominąć to ostrzeżenie, wybierając Zaawansowane > Przejdź do {Project Name} (niebezpieczne).
File not found error for credentials.json
Podczas uruchamiania przykładowego kodu może pojawić się komunikat o błędzie „Nie znaleziono pliku” lub „nie ma takiego pliku” dotyczący plikucredential.json.
Ten błąd występuje, jeśli nie autoryzowano danych logowania aplikacji komputerowej. Więcej informacji o tworzeniu danych logowania w aplikacji komputerowej znajdziesz w artykule Tworzenie danych logowania.
Po utworzeniu danych logowania sprawdź, czy pobrany plik JSON został zapisany jako credentials.json
. Następnie przenieś plik do katalogu roboczego.
Token has been expired or revoked
Po uruchomieniu przykładowego kodu możesz zobaczyć komunikat o błędzie „Token wygasł” lub „Token został unieważniony”.
Ten błąd występuje, gdy token dostępu z serwera autoryzacji Google wygasł lub został unieważniony. Informacje o potencjalnych przyczynach i sposobach eliminacji znajdziesz w artykule Odświeżanie wygaśnięcia tokena.
Błędy Pythona
Poniżej znajduje się kilka typowych błędów w Pythonie.
AttributeError: 'Module_six_moves_urllib_parse' object has no attribute 'urlparse'
Ten błąd może wystąpić w systemie Mac OSX, gdy domyślna instalacja modułu six
(zależność biblioteki Pythona) jest wczytywana przed zainstalowaniem modułu pip. Aby rozwiązać ten problem, dodaj lokalizację instalacji pip do zmiennej środowiskowej PYTHONPATH
:
Określ lokalizację instalacji pip:
pip show six | grep "Location:" | cut -d " " -f2
Zanotuj tę lokalizację, ponieważ będzie potrzebna w następnym kroku.
Dodaj ten wiersz do pliku
~/.bashrc
, zastępującINSTALL_PATH
lokalizacją określoną na podstawie poprzedniego kroku:export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
Załaduj ponownie plik
~/.bashrc
:source ~/.bashrc
TypeError: sequence item 0: expected str instance, bytes found
Ten błąd wynika z błędu w httplib2
. Aby rozwiązać ten problem, uaktualnij httplib2
do najnowszej wersji:
pip install --upgrade httplib2
Cannot uninstall 'six'
Podczas uruchamiania polecenia pip install
może pojawić się ten błąd:
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.
Ten błąd występuje w systemie Mac OS X, gdy pip próbuje uaktualnić wstępnie zainstalowany pakiet six
. Aby obejść ten problem, dodaj do polecenia pip install
flagę --ignore-installed six
.