我正在阅读与Facebook的Native Desktop应用程序编程相关的所有Facebook文档。我明确说明了Native Desktop应用程序。它将使用没有JAVA SDK的客户端身份验证。
据我所知,我知道access_tokens会过期。我还读过你可以重新验证。但...........Facebook有关于如何使用在没有JAVA SDK的情况下使用客户端身份验证在Windows / Mac OSX或Linux上运行的桌面应用程序执行此操作的文档非常有限。
我的问题是......对于这样的Facebook桌面应用程序,这是否可行,或者每次access_token到期时我是否必须询问用户,再次授权我的应用程序?
重要提示:Facebook不再支持offline_access
权限功能/ API(解决方案本来可以)了。
答案 0 :(得分:1)
找到解决方案。
是的,Native Desktop客户端可以重新进行身份验证。 access_tokens(由用户在应用程序身份验证期间由Facebook提供)形成用户,Facebook和我的桌面应用程序之间的连接。此access_token(一串111个令牌)有效期为60天。当它到期时,用户必须再次进行身份验证,但不必再次标记所有选项以指定我的Native Desktop App可能具有的权限。
然后,用户只需使用
登录Facebook即可https://www.facebook.com/dialog/oauth?client_id=YourAppClientIDGivenByFacebookDuringAppRegistration&redirect_uri=https://www.facebook.com/connect/login_success.html&scope=PermissionsScope
再次没有他或她必须做的任何其他操作(只需使用正确的URL以及正确的权限范围进行登录)。然后,我的桌面应用程序的用户将重定向到只显示消息的URL 成功。
所以你需要一个浏览器,或者你需要自己处理http get和post请求。