Google Javascript API:访问令牌过期后会发生什么
Google Javascript API: What happen after access token expire?
我有一个客户端web应用程序(没有后端),使用谷歌Javascript API。我有一个关于登录成功后获得的访问令牌的问题。
从回调中,我们可以看到访问令牌被设置为1小时后过期。
expires_in: "3600"
问题是,我如何"获得一个新的令牌"?从文档中,我的印象是,在令牌无效之后,我们必须(我引用)执行一个新的重新授权流,将immediate设置为true,以获得最新的访问令牌。
来源:https://developers.google.com/+/web/api/javascript
然而,当我试图再次调用auth方法时:
gapi.auth.authorize(parameters, callback)
我得到了令牌对象,但是里面没有访问令牌。
{
client_id: "{my_client_id}.apps.googleusercontent.com"
cookie_policy: undefined
expires_at: "1370371466"
expires_in: "86400"
g_user_cookie_policy: undefined
issued_at: "1370285066"
response_type: "token"
scope: "https://www.googleapis.com/auth/plus.login https://gdata.youtube.com"
}
我错过了什么吗?我们通常如何在一个令牌过期后获得刷新令牌?
在客户端,访问令牌是临时的。默认情况下,这是对用户资源的在线访问。为了再次获得访问令牌,您需要再次重定向用户以获得权限。
在OAuth协议中,您的应用程序请求访问由作用域标识的资源的授权,并且假设用户经过身份验证并批准,您的应用程序接收短期访问令牌,允许它访问这些资源,并且(可选地或更准确地在服务器端)刷新令牌允许长期访问。
为服务器端应用程序和用户资源的离线访问,你需要有刷新令牌参考:谷歌分析API自动登录
另请参阅:https://developers.google.com/accounts/docs/OAuth2WebServer
https://developers.google.com/accounts/docs/OAuth2UserAgent相关文章:
- 这是什么 ==- javascript 运算符
- 我的单元测试选项是什么
- 全局变量和全局对象的属性之间有什么区别吗
- 打破承诺链的好方法是什么
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- Javascript中的空白是什么
- 是什么让一个“;Uncaught RangeError:超过了最大调用堆栈大小“;错误(Chrome,在其他浏览器中显示
- 在ember/handlers中使用value和valueBinding有什么区别
- 什么'在webpack外部设置中,reactDom和reactDom不同
- 在JavaScript中拆分日期字符串的更好方法是什么
- 为什么$.brower被弃用?还有什么更好的替代方案
- 什么是&&在没有if的行中的变量之间
- 将jQuery.ech()方法转换为本地JavaScript抽象的最佳方法是什么
- 处理浮点错误的最佳方法是什么
- DOM元素和angular元素之间的主要区别是什么
- 如何在Analytics.js中始终了解最新的cookie过期时间
- javascript导入的最佳实践是什么
- Google Javascript API:访问令牌过期后会发生什么
- 存储过期日期/时间戳的正确方法是什么?
- 当您在客户端过期cookie并转到服务器端时会发生什么?