Неверный запрос 400 при запросе токена Google OAuth2, Java - PullRequest
0 голосов
/ 03 ноября 2018

Я получил код авторизации от выполнения запроса «GET» и входа в систему, и я пытаюсь использовать этот код для получения токена аутентификации, используя http «POST», но я всегда получаю код ответа 400. Мой код выглядит следующим образом:

// Create HTTP Objects
HttpClient httpclient = HttpClients.createDefault();
HttpPost httpPost = new HttpPost("https://www.googleapis.com/oauth2/v4/token");

// Add Header
httpPost.addHeader("Content-Type", "application/x-www-form-urlencoded");

// Create Parameters
List<NameValuePair> params = new ArrayList<>();
params.add(new BasicNameValuePair("code", code));
params.add(new BasicNameValuePair("client_id", client_id));
params.add(new BasicNameValuePair("client_secret", client_secret));
params.add(new BasicNameValuePair("redirect_uri", redirect_uri));
params.add(new BasicNameValuePair("grant_type", "authorization_code"));

// Add Parameters and Excecute
httpPost.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));
HttpResponse response = httpclient.execute(httpPost);

Кажется, что они идеально соответствуют документации, которую они предоставляют здесь: https://developers.google.com/identity/protocols/OAuth2WebServer

Есть идеи, почему это происходит?

1 Ответ

0 голосов
/ 03 ноября 2018

Хорошо, я понял, это было так просто, что потребовалось достаточно много времени, чтобы отладить мой код для истечения срока действия кода авторизации из Google.

Я получил новый код от Google, и он работал.

...