在搜索并阅读official docs扩展令牌之后,如果有更好的方法从本机桌面应用程序刷新长期访问令牌,而不是提示用户登录和授权网址,我就不会得到明确的pciture再次。 dektop应用程序不允许此调用:
GET /oauth/access_token?
grant_type=fb_exchange_token&
client_id={app-id}&
client_secret={app-secret}&
fb_exchange_token={short-lived-token}
所以我现在找到的唯一选择就是检测令牌是否即将到期以及何时将用户重新定向到登录页面以重新授权我的应用程序,不是很舒服,你知道其他任何方法吗?
答案 0 :(得分:2)
根据你的问题,你想要刷新长寿命令牌。你想要点击的服务是从你从认证流程获得的短期令牌中获得长期生存,而不是刷新现有的长期令牌
您可以通过将此人发送回您的网络应用程序使用的登录流程来生成新的长期令牌 - 请注意,此人实际上不需要再次登录,他们已经授权您的应用程序,因此他们会立即使用刷新的令牌从登录流程重定向回您的应用程序。
执行上述操作后,您将获得一个新的短期令牌,然后您需要为长期令牌执行相同的交换。
请参阅https://developers.facebook.com/docs/facebook-login/access-tokens以获取详细信息