我有一个PHP应用程序使用LinkedIn API来显示我的公司更新。
我知道Access令牌的持续时间为60天。为了刷新它,我需要连接到linkeIn并拥有一个不到60天的当前Access令牌。
但我的问题是,在我的应用程序中,用户无法登录,我使用自己的帐户获取第一个访问令牌并使用我的访问令牌调用API方法。
如何在没有手动获取新令牌的情况下,将自己的访问令牌刷新到我的Web应用程序超过60天?如果除了我的应用仍在调用API之外我什么都不做,那么访问令牌会自动刷新吗?
非常感谢!
答案 0 :(得分:0)
我不确定,但我认为您必须手动登录并更新60天令牌。
我已经构建了一个类似的c#.net应用程序,我将令牌和exp.date保存在一个文件中。然后我永远缓存该文件。
我将API的结果缓存5分钟。当缓存过期并且我向API发出新请求时,我也检查exp。令牌的日期。
当它少于3天时,我发送电子邮件给管理员,通过我的特殊登录窗口登录来更新令牌,我保存了60天的访问令牌。
答案 1 :(得分:0)
LinkedIn的OAuth 2.0文档介绍了如何刷新访问令牌:https://developer.linkedin.com/docs/oauth2#refresh
请注意,要求用户登录linkedin.com以刷新其令牌 - 因此,如果您的应用在尝试刷新时没有用户交互,则无法使用,令牌将会生效被LinkedIn过期。