gpt4 book ai didi

java - 检查 facebook 用户是否从 java 中的服务器端连接到应用程序

转载 作者:行者123 更新时间:2023-11-29 09:11:41 26 4
gpt4 key购买 nike

我的应用程序是用 JSF 框架编写的。 JavaScript API 中有一种方法可以识别用户是否已连接到应用程序

FB.init({appId: "#{settings.fbClientId}", status: true, cookie: true});
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
var uid = response.authResponse.userID;
var accessToken = response.authResponse.accessToken;
}
}

我正在寻找一个可以让我从服务器端执行相同操作的函数。目前我正在使用 restFB 向 Facebook 发出请求。看起来这个实现不支持授权和相关功能。我知道这在 PHP SDK 和 Python SDK 中是可能的,但在 Java 中找不到这样的东西。

注意:我可以使用 JS API 进行检查,然后从服务器端发出所有必要的请求,但这不是我所需要的。我正在寻找一种解决方案,让我可以从服务器端进行所有操作。

最佳答案

任何仅服务器端技术都无法识别 Facebook 用户在 Facebook 之外重新访问您的应用程序(无论如何在一定时间过去后)。

原因很简单:我登录 Facebook 在我的浏览器中创建了 cookie,这些 cookie 是为 facebook.com 域设置的。 我的 服务器(因此,在我的域下)上的任何服务器端技术都无法获取这些 cookie 的内容。

然而,JS SDK 能够发出跨域请求以检查我是否登录到 Facebook,然后在我的 域下设置一些 cookie,通过它任何服务器端技术都可以访问我在下次请求时的当前状态。

关于java - 检查 facebook 用户是否从 java 中的服务器端连接到应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12015698/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com