2012-04-24 20 views
5

Programuję serwer WWW, aby obsługiwał oAuth2 dla interfejsów Google API i podążam za this documentation. Wydaje się, że wszystko działa dobrze do tego stopnia, że ​​próbuję utworzyć interfejs API Google przy użyciu tokena dostępu. Przykład połączenia z dokumentacji:Czy mój token Google oAuth2 wygląda prawidłowo?

https://www.googleapis.com/oauth2/v1/userinfo?access_token=1/fFBGRNJru1FQd44AzqT3Zg 

Kiedy próbuję go z moim token dostępu otrzymuję 401 Nieprawidłowy token błąd.

Przeglądając literaturę, wszystkie przykłady pokazują token dostępu w formacie 1/fFBGR ....... Mój token dostępu ma postać ya29.AHES67z ....... i jest znacznie dłuższy (zobacz poniższy fragment zawierający odpowiedź od google).

oauth2 request:{ 
"access_token" : "ya29.AHES67zeEn-RDg9CA5gGKMLKuG4uVB7W4O4WjNr-NBfY6Dtad4vbIZ", 
"token_type" : "Bearer", 
"expires_in" : 3600 
} 

Wygląda na to, że mój token jest nieprawidłowy. Czy muszę je kodować/dekodować?

+1

Hmmm - może mój token jest w porządku. Znaleziono [przykład] (http://are4.us/raysblog/?p=2932), gdzie ktoś ma token zaczynający się od ya29. –

Odpowiedz

11

Ostatnio grałem z OAuth2.0 z VBA.

Authorization Code Begins With: 4/Omoy (30 Characters Long) 
Access_Token Begins With:  ya29.AHES (60 Characters Long)  
Refresh_Token Begins With:  1/Ry68 (45 Characters Long) 

Nie musiałem wykonywać żadnego dekodowania ani kodowania, aby użyć tych wartości. To były działające, funkcjonalne wartości.

+0

Tak - poprawne. Myliłem się przez cały czas. –

+0

dobre informacje! Myślałem, że mam problemy z żetonami ya29.AHES, które są tak różne i powodują błędy na moim serwerze, ale kiedy przeczytałem tę odpowiedź, przynajmniej wiedziałem, że mam słuszność. przeglądając dokumentację "Zaloguj się w Google +", odkryłem, że w małym drobnym druczku wspomniałem, że podczas tworzenia aplikacji na konsoli API trzeba oznaczyć ją jako "inną", a nie jako "iOS". kiedy wprowadziłem tę zmianę, zaczęło działać poprawnie. prawdopodobnie w miejscu, w którym chcę dzielić się z Google +, utworzę kolejny identyfikator konsoli API z włączonym iOS ... –

Powiązane problemy