【发布时间】:2023-04-04 03:24:01
【问题描述】:
我能够生成访问令牌,但响应对象返回 null 刷新令牌以下是我的代码。
JavaScript:
function connect_dfa(oauthurl,scop,redirect,clientId) {
var width = 1024;
var height = 512;
var left = (screen.width / 2) - (width / 2);
var top = (screen.height / 2) - (height / 2);
var specs = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,copyhistory=no,width='+width+',height='+height+',top='+top+',left='+left;
var url = oauthurl+"&scope="+scop+"&redirect_uri="+redirect+"&response_type=code&client_id="+clientId;
alert (url);
var win = window.open(url, 'scgid platform', specs, false);
return false;
}
一旦它重定向到重定向 URL 以下代码使用身份验证代码生成访问令牌:
flow = new GoogleAuthorizationCodeFlow.Builder(HTTP_TRANSPORT, JSON_FACTORY, CLIENT_ID, CLIENT_SECRET, SCOPES).build();
final TokenResponse response = flow.newTokenRequest(dfaToken).setRedirectUri(CALLBACK_URI)
.execute();
System.out.println(response.getAccessToken());
System.out.println(response.getRefreshToken());
它返回一个访问令牌,例如:ya29.CgH2ZBKtHUBr6uJtOs8q0q2vf_tllv_UYMF-Vcd-bODGOgoxqz05mzfDkymEGjVdmYuw2Os4FFpQPQ"
但为 Refresh Token 返回 NULL。
我做错了什么,因为我能够生成访问令牌。
【问题讨论】:
-
不,这是一个不同的问题,不是重复的问题,请您删除上面的 cmets。
-
刷新令牌仅在初始授权时返回。尝试撤销权限并重试
标签: javascript oauth-2.0 google-oauth