Facebook 如何识别接受通知请求的用户

Facebook 如何识别接受通知请求的用户,facebook,request,Facebook,Request,对于新的Facebook请求对象,只提供一个ID 如果用户使用Multi-Friend Finder邀请多个朋友,则只提供一个请求id 然后,当被邀请的用户进入他们的Facebook页面并接受请求时,使用相同的请求id 现在我无法识别这个用户是谁,因为所有被邀请的用户都有相同的请求id 如何访问用户的ID 更新: 我明白我必须要求用户授权我的申请。我有以下代码来确定用户是否已授权我的应用程序: FB.init ( {

对于新的Facebook请求对象,只提供一个ID

如果用户使用Multi-Friend Finder邀请多个朋友,则只提供一个请求id

然后,当被邀请的用户进入他们的Facebook页面并接受请求时,使用相同的请求id

现在我无法识别这个用户是谁,因为所有被邀请的用户都有相同的请求id

如何访问用户的ID

更新:

我明白我必须要求用户授权我的申请。我有以下代码来确定用户是否已授权我的应用程序:

FB.init
          (
              {
                  appId   : "<%=APPLICATION_ID%>",
                  status  : true,
                  cookie  : true,
                  oauth   : true
              }
          );

          FB.getLoginStatus(function(response) {
          if (response.status === 'connected') {
            // the user is logged in and connected to your
            // app, and response.authResponse supplies
            // the user's ID, a valid access token, a signed
            // request, and the time the access token 
            // and signed request each expire
        alert('connected');
            var uid = response.authResponse.userID;
            var accessToken = response.authResponse.accessToken;
        alert(uid)
          } else if (response.status === 'not_authorized') {
            alert('notconnected');
            // the user is logged in to Facebook, 
            //but not connected to the app
        **//here need to get authorization for the application**
          } 
         });
FB.init
(
{
appId:“”,
状态:正确,
曲奇:是的,
真的吗
}
);
FB.getLoginStatus(函数(响应){
如果(response.status===“已连接”){
//用户已登录并连接到您的
//app和response.authResponse提供
//用户ID、有效访问令牌、签名
//请求,以及访问令牌的时间
//和签名的请求都将过期
警报(“已连接”);
var uid=response.authResponse.userID;
var accessToken=response.authResponse.accessToken;
警报(uid)
}else if(response.status===“未授权”){
警报(“未连接”);
//用户已登录到Facebook,
//但未连接到应用程序
**//这里需要获得应用程序的授权**
} 
});

如何在Facebook上打开授权对话框?

你应该让他连接你的应用程序

但是,您可以使用应用程序
access\u token
获取有关请求本身的信息,以了解所有用户的请求已发送到

顺便说一句,一旦用户接受请求,请求就不会被删除,所以您可以在授权后提取用户的所有请求并删除这些请求

更新:
您可以通过请求他授权您的应用程序来获取用户身份,一旦通过
请求\u id
登录到您的应用程序,这可以使用或的方法完成(有关更多详细信息,请参阅)

正如Facebook官员在以下网站上所述:

如果开发人员需要清除未完成的请求,他们可以使用发送请求时收到的UID,如JavaScript回调或Graph API响应中返回的那样。否则,请求将自然超时并自动清除


我已为发送请求的用户保存了数据。然而,当用户点击请求通知时,我只得到请求ID no FB user ID。在Facebook为每个用户生成不同的请求ID之前。现在它只有一个请求ID,所以我需要能够识别谁点击了他们的请求通知。正如我说的:你应该让他连接你的应用程序。看看我最新的答案…这正是我所做的。谢谢多汁的编剧。顺便说一句,名字不错。