刷新访问令牌的问题

时间:2014-12-07 10:12:38

标签: java-ee oauth-2.0 google-calendar-api scribe

我正在使用Google Calendar API进行Scribe身份验证,OAuth 2.0。身份验证已成功完成,但我不知道如何在数据库中保存accessToken。我使用以下代码:

Verifier verifier = new Verifier(code);
Token accessToken = service.getAccessToken(EMPTY_TOKEN, verifier);
API_USER_TOKEN = accessToken.getToken();
API_USER_SECRET = accessToken.getSecret();
/*Guardar tudo na base de dados*/
saveToken(API_USER_TOKEN, API_USER_SECRET);

然后,我需要检索令牌e再次使用它,但我应该如何使用我存储在数据库中的accessToken?我该如何刷新它?

我尝试使用以下代码刷新令牌:

OAuthRequest request = new OAuthRequest(Verb.POST,"https://www.googleapis.com/oauth2/v3/token");
JSONObject payload = new JSONObject();
request.addQuerystringParameter("grant_type", "refresh_token");
request.addQuerystringParameter("refresh_token", oldToken.getToken());
request.addQuerystringParameter("client_id", API_APP_KEY);
request.addQuerystringParameter("client_secret", API_APP_SECRET);
service.signRequest(oldToken, request);
Response response = request.send();

但我一直收到同样的错误:invalid_grant bad request

0 个答案:

没有答案