0

我正在使用 Fb、Amazon、Twitter、google 和 cognito 实现 Js 浏览器端代码登录。

已经到了可以获取所有 4 个客户端令牌的阶段,但问题是这些令牌是短暂的,并且会在 1-2 小时内到期。

研究表明 Google 令牌仅持续 1 小时,延长寿命需要服务器端代码。

FB 令牌持续 2 小时,自动刷新,但仅在用户登录时。下次用户回来时(比如 2 天后),令牌将过期。再一次,这需要服务器端代码来获得更长寿的令牌。

Amazon 令牌有效期为 1 小时,Twitter 令牌不会过期。

感谢所有帮助(文档链接、经验等)。

浏览器上的 JS(不是 node.js)

使用 Cognito,但 AFAIK 它与令牌的寿命没有任何关系。

也欢迎指正。

4

1 回答 1

3

尝试延长浏览器中的短期访问令牌不是一个好主意(尽管有可能,至少对于 FB 而言),因为这样您就必须在您的 JS 应用程序中公开您的应用程序的秘密,每个人都可以理论上是从那里偷的。

您可以通过这种方式失去对社交应用程序的访问权限。因此,在服务器端执行此操作更有意义。

请注意,由于此请求使用您的应用程序密码,因此绝不能在客户端代码或可反编译的应用程序二进制文件中进行。重要的是,您的应用程序机密永远不会与任何人共享。因此,此 API 调用只能使用服务器端代码进行。

于 2015-09-08T06:51:48.807 回答