Google wzięło i zabiło stary dobry sposób logowania zwany ClientLogin.
Nie ma się co dziwić, był nie do końca bezpieczny i od dwóch albo i trzech lat mówili, że go zabiją.
Jednak było to zaskoczenie, bo mi aplikacja przestała działać ;-)
Niby żaden problem, bo wystarczy przejść na logowanie OAuth2 i wszystko będzie śmigać.
Sęk w tym, że biblioteki, których używa ta aplikacja nie wspierają OAuth2. Powstały gdy go jeszcze nie było ;-)
I co robić?
Hackować ;-)
Dobrze wycelowany kawałek debugera, do tego cudowna zdolność IntelliJ do dekompilacji kodu i okazuje się, że po tym jak się samemu już zdobędzie access_token dla usługi to trzeba go tylko jakoś wcisnąć bibliotekom.
Jeszcze chwila i już wiem, że wystarczy zrobić:
myService.setPrivateHeader("Authorization", "Bearer "+accessToken);
Dzięki temu znów mam pod postami na blogu listę podobnych postów ;-)
Chociaż jeszcze nie działa wszystko tak jak powinno, czyli bezobsługowo.
Podobne postybeta
Jak walczyć z gigantycznym kodem w Java'ie, część 1.6 - podłe metody prywatne ;-)
Testowanie boli...
Papa dla ClientLogin
"We skrócie"
Programowanie trudne ;-)
środa, czerwca 03, 2015
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz