0

我正在阅读与为 Facebook 编写本机桌面应用程序相关的所有 Facebook 文档。我明确声明了本机桌面应用程序。它将在没有 JAVA SDK 的情况下使用客户端身份验证。

据我所知,我知道 access_tokens 确实过期了。我还读到您可以重新进行身份验证。但是............ Facebook 关于如何在没有 JAVA SDK 的情况下使用客户端身份验证在 Windows/Mac OSX 或 Linux 上运行的桌面应用程序的文档非常有限。

我的问题是......对于这样的 Facebook 桌面应用程序,这是否可能,还是每次 access_token 过期时我都必须询问用户,以再次授权我的应用程序?

重要提示:Facebook 不再支持offline_access权限功能/API(可能的解决方案)。

4

1 回答 1

1

找到了解决方案。

是的,本机桌面客户端可以重新进行身份验证。access_tokens(由 Facebook 在用户的应用程序身份验证期间提供)形成用户、Facebook 和我的桌面应用程序之间的连接。此 access_token(一串 111 个令牌)有效期为 60 天。当它过期时,用户必须再次进行身份验证,但不必再次标记所有选项来指定我的本机桌面应用程序可能拥有的权限。

然后,用户只需使用

https://www.facebook.com/dialog/oauth?client_id=YourAppClientIDGivenByFacebookDuringAppRegistration&redirect_uri=https://www.facebook.com/connect/login_success.html&scope=PermissionsScope

再次没有他或她必须做的任何其他操作(只需使用正确的 URL 和正确的权限范围登录就可以了)。然后,我的桌面应用程序的用户被重定向到仅显示消息Success的 URL 。

所以你需要一个浏览器或者你需要自己通过代码处理http get和post请求。

于 2012-07-26T09:48:25.407 回答