使用请求对话框时,facebook 会发出如下通知:
我希望实现的是用户单击上面显示的请求链接并在我们的应用程序上显示“随机用户邀请您...”消息。
但是,当单击该链接时,Facebook 似乎没有将“随机用户”的 id 传递给应用程序。链接访问的 url 类似于:
http://apps.facebook.com/randomcomp/?fb_source=notification&request_ids=350578327437399,350578327437399&ref=notif&app_request_type=user_to_user¬if_t=app_request
其中不包含对发起请求的用户的任何引用。
从应用程序的角度来看,似乎没有办法从 Facebook 获取这些信息。当然,您可以获得请求列表,但该列表可以包含许多请求的信息,包括来自其他用户的请求以及我们感兴趣的请求,因此在这种情况下它没有用处。例如,这是数据的快照:
{
"data": [
{
"id": "340083146057323_100003817986566",
"application": {
"name": "Random Competition",
"namespace": "randomcomp",
"id": "350578327437399"
},
"to": {
"name": "Hannah Smith",
"id": "100003817986566"
},
"from": {
"name": "Random User",
"id": "100002286042525"
},
"data": "100002286042525",
"message": "Use the app!",
"created_time": "2012-05-14T13:26:30+0000"
}, {
"id": "358318457550141_100003817986566",
"application": {
"name": "Random Competition",
"namespace": "randomcomp",
"id": "350578327437399"
},
"to": {
"name": "Hannah Smith",
"id": "100003817986566"
},
"from": {
"name": "Jane Young",
"id": "100003771838663"
},
"data": "100002286042525",
"message": "Use the app!",
"created_time": "2012-05-14T10:54:25+0000"
}],
}
}
如您所见,data
正在传入,但仍然无法将来自上述链接(对于随机用户)的点击加入列表中的正确请求;链接通过两个请求的 ID,而不仅仅是随机用户的 ID,并且虽然链接状态为“随机用户”,但它不通过标识符。
我错过了什么吗?是否有文档中没有的机制允许我获取“随机用户”ID,以便当他们点击时我可以在应用程序中提供一个很好的“随机用户邀请您...”消息?
编辑:
事实证明这是不可能的 - 请参阅我的答案。