Rozwiązywanie problemów z uwierzytelnianiem i autoryzacją

Na tej stronie znajdziesz opis kilku częstych problemów, które możesz napotkać uwierzytelnianie i autoryzacja.

This app isn't verified

Jeśli na ekranie zgody OAuth pojawi się ostrzeżenie „Ta aplikacja nie jest zweryfikowana”, Twój aplikacja żąda zakresów, które zapewniają dostęp do poufnych danych użytkownika. Jeśli aplikacja korzysta z zakresów wrażliwych, aplikacja musi przejść przez proces weryfikacji aby usunąć to ostrzeżenie i inne ograniczenia. W fazie tworzenia aplikacji możesz pominąć to ostrzeżenie, wybierając Zaawansowane > Otwórz projekt {Project Name} (niebezpieczne).

File not found error for credentials.json

Podczas uruchamiania przykładowego kodu możesz zobaczyć komunikat „Nie znaleziono pliku” lub „nie tak plik” – komunikat o błędzie dotyczący plikucredential.json.

Ten błąd występuje, jeśli nie autoryzowano aplikacji komputerowej dane logowania. Aby dowiedzieć się, jak utworzyć dane logowania w przypadku aplikacji komputerowej przejdź do Utwórz dane 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

Uruchamiając przykładowy kod, możesz zobaczyć komunikat „Token wygasł”. lub „Token został unieważniony” .

Ten błąd występuje, gdy token dostępu z serwera autoryzacji Google ma wygasła lub została unieważniona. Informacje o potencjalnych przyczynach i poprawek, zobacz Wygaśnięcie tokena odświeżania

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, w którym domyślna instalacja aplikacji six moduł (zależność biblioteki Pythona) jest ładowana przed modułem, Zainstalowano. Aby rozwiązać ten problem, dodaj lokalizację instalacji pip do aplikacji PYTHONPATH systemowa zmienna środowiskowa:

  1. Określ lokalizację instalacji pip:

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

    Zanotuj tę lokalizację, ponieważ będzie potrzebna w następnym kroku.

  2. Dodaj ten wiersz do pliku ~/.bashrc, zastępując INSTALL_PATH z lokalizacją określoną na podstawie poprzedni krok:

    export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
    
  3. 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, przejdź na wyższą wersję do najnowszej wersji aplikacji httplib2:

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 przy próbie uaktualnienia wstępnie zainstalowanego programu pip six pakiet. Aby obejść ten problem, dodaj flagę --ignore-installed six do polecenia pip install.