使用 OAuth.io JS SDK(客户端)从 Google 获取刷新令牌
Getting refresh tokens from Google with OAuth.io JS SDK (Client side)
我正在尝试使用 OAuth.io 为 Google 提供商获取访问令牌和刷新令牌。我在 OAuth.io.
中为 access_type 选择了离线
代码如下
OAuth.popup("google", {'authorize' : { "approval_prompt" : 'force'}})
.done(function(result) {
console.log(result);
})
.fail(function (err) {
//handle error with err
console.log(err);
});
我没有收到 refresh_token 的回复。我只从响应中得到 access_token。
JSON 访问令牌的响应是:
{
"status": "success",
"data": {
"access_token": "ya29.pAGQWe3yxxxxxx",
"token_type": "Bearer",
"expires_in": 3600,
"request": {
"url": "https://www.googleapis.com",
"headers": {
"Authorization": "Bearer {{token}}"
}
},
"id_token": "eyJhbGciOiJSUzIxxxxxxxx"
},
"state": "Q9nfocQXJxxxx",
"provider": "google"
}
参考
我找到了这个 link Getting refresh tokens from Google with OAuth.io
他们在这里解释了如何在服务器端获取刷新令牌。
我想在客户端 JS 中获取刷新令牌。
- 转到帐户安全设置并单击编辑
- https://www.google.com/settings/u/1/security.
- 在 "Authorizing applications and sites" 旁边。然后点击“撤销
- 访问”在您的应用程序旁边。您发出的下一个 OAuth2 请求将
- return一个refresh_token.
您还可以使用 Open Oauth Here
尝试将第一行更改为:
OAuth.popup("google", {
'authorize' : {
"approval_prompt" : "force",
"access_type" : "offline"}})
Google's docs 描述离线刷新令牌的工作原理。
转到OAuth.io应用常规设置页面,select显示高级选项然后select发送刷新令牌到前端.
在集成 API 中,select access_type 为 离线。这将在使用以下代码时将刷新令牌发送到前端
var oauthOptions = { 'authorize' : { "approval_prompt" : "force" } };
OAuth.popup("google", oauthOptions)
.done(function(result) {
console.log("Post postProcessing");
console.log(result);
})
.fail(function (err) {
console.log(err);
});
我正在尝试使用 OAuth.io 为 Google 提供商获取访问令牌和刷新令牌。我在 OAuth.io.
中为 access_type 选择了离线代码如下
OAuth.popup("google", {'authorize' : { "approval_prompt" : 'force'}})
.done(function(result) {
console.log(result);
})
.fail(function (err) {
//handle error with err
console.log(err);
});
我没有收到 refresh_token 的回复。我只从响应中得到 access_token。
JSON 访问令牌的响应是:
{
"status": "success",
"data": {
"access_token": "ya29.pAGQWe3yxxxxxx",
"token_type": "Bearer",
"expires_in": 3600,
"request": {
"url": "https://www.googleapis.com",
"headers": {
"Authorization": "Bearer {{token}}"
}
},
"id_token": "eyJhbGciOiJSUzIxxxxxxxx"
},
"state": "Q9nfocQXJxxxx",
"provider": "google"
}
参考
我找到了这个 link Getting refresh tokens from Google with OAuth.io 他们在这里解释了如何在服务器端获取刷新令牌。
我想在客户端 JS 中获取刷新令牌。
- 转到帐户安全设置并单击编辑
- https://www.google.com/settings/u/1/security.
- 在 "Authorizing applications and sites" 旁边。然后点击“撤销
- 访问”在您的应用程序旁边。您发出的下一个 OAuth2 请求将
- return一个refresh_token.
您还可以使用 Open Oauth Here
尝试将第一行更改为:
OAuth.popup("google", {
'authorize' : {
"approval_prompt" : "force",
"access_type" : "offline"}})
Google's docs 描述离线刷新令牌的工作原理。
转到OAuth.io应用常规设置页面,select显示高级选项然后select发送刷新令牌到前端.
在集成 API 中,select access_type 为 离线。这将在使用以下代码时将刷新令牌发送到前端
var oauthOptions = { 'authorize' : { "approval_prompt" : "force" } };
OAuth.popup("google", oauthOptions)
.done(function(result) {
console.log("Post postProcessing");
console.log(result);
})
.fail(function (err) {
console.log(err);
});