Я прошу моего клиента нажать на этот URL с его авторизованной учетной записью gmail, с которой он создал проект google api.
https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/androidpublisher&response_type=code&access_type=offline&redirect_uri=http://www.XXXXXXXX.com/oauth2callback&client_id=XXXXXX.apps.googleusercontent.com&state=profile&approval_prompt=force
а затем попросите его предоставить мне параметр кода из перенаправленного URL
http://www.XXXXXXXX.com/oauth2callback?code=4/jUxc2MdX0xmF-b4_I6v2SLMQMuxO.cvQLVEpcJMUXOl05ti8ZT3ZvsT9ddwI
Затем я сам отправляю эту форму со следующей информацией.
<form action="https://accounts.google.com/o/oauth2/token" method="post" >
<input type="hidden" name="grant_type" value="authorization_code" >
<input type="text" name="code" value="**is the one i recieved from previous step**">
<input type="hidden" name="client_id" value="XXXXXXX.apps.googleusercontent.com" >
<input type="hidden" name="client_secret" value="XXXXXXXXXXXX" >
<input type="hidden" name="redirect_uri" value="http://www.XXXXXX.com/oauth2callback" >
<input type="submit" value="Submit">
</form>
а затем я получаю следующую ошибку
{
"error" : "invalid_grant"
}
Когда я сам генерирую код url param и выполняю следующий шаг. я успешно представлен следующим ответом
{
"access_token" : "XXXXXXStBkRnGyZ2mUYOLgls7QVBxOg82XhBCFo8UIT5gM",
"token_type" : "Bearer",
"expires_in" : 3600,
"refresh_token" : "XXXXXX3SEBX7F2cfrHcqJEa3KoAHYeXES6nmho"
}
Но если клиент сгенерирует код "url" url, тогда я вижу недопустимую ошибку гранта.
Мой клиент находится в Великобритании, и я в другой стране. Кто-нибудь может подтвердить, если это ошибка, потому что клиент генерирует параметр кода в другой стране, и я использую этот код в другой стране?
Спасибо заранее.