2015-12-29 4 views
0

Я пытаюсь получить список альбомов, как написано здесь: https://developers.google.com/picasa-web/docs/1.0/developers_guide_protocol#ListPhotosВеб-альбомы Picasa REST API: 404 Неизвестная проблема Пользователь

GET https://picasaweb.google.com/data/feed/api/user/default Авторизация: Знаменосец MY_ACCESS_TOKEN_HERE

Итак, проблема что я получаю ответ «404 Неизвестный пользователь». Странно, но когда я делаю тот же запрос с тем же токеном доступа с другого ПК, я получаю правильный ответ (200 OK и список альбомов).

Я не использовал ничего полезного для Google, кроме аналогичной проблемы, которая была для API для Python (например, здесь: AuthSub: (404, 'Not Found', 'Unknown user.')). Кто-нибудь сталкивался с той же проблемой?

ответ

0

Таким образом, проблема заключалась в том, что сервер Google Photos неправильно обрабатывает запросы, если эти запросы содержат неправильные заголовки Cookie. Я говорю «неправильно», потому что другие API Google (например, «Диск», «Контакты» и т. Д.) Не имели этой проблемы.

Таким образом, все, что я должен был сделать, это добавить INTERNET_FLAG_NO_COOKIES флаг в функции InternetOpenURL:

InternetOpenUrl(NetHandle, PChar(Url), PChar(Header), Length(Header), INTERNET_FLAG_RELOAD or INTERNET_FLAG_NO_COOKIES, 0); 

После этого отправки запросов HTTP с использованием InternetOpenUrl с флагом не будет возвращать эту ошибку больше.