我使用facebook请求对话框显示我的朋友列表并在Facebook Web APP中邀请它,使用:
function sendRequestViaMultiFriendSelector() {
FB.ui(
{
method: 'apprequests',
message: 'Selección de amigos a los que invitar a KugaBar'
}, requestCallback);
}
function requestCallback(data) {
console.log(data);
}
它有效,好吧,但我需要在进入我的APP时识别用户,y看到requestCallback数据并看到“请求”,但是当用户点击通知并输入APP时我不知道如何识别检测用户是否正在通过通知进行访问的请求。
编辑:好的我发现它,GET变量中的参数是“request_ids”,但是出现一个问题,只有当用户先前已经通过了权限时才会出现此参数,如果用户登录通知,则接受权限并且输入,这个param dosent存在,如果用户再次输入(不需要接受任何东西),这个param存在于URL中。有没有方法在用户第一次进入时获取此参数?
有可能吗?
由于
答案 0 :(得分:0)
当用户首次点击请求时,您应该从URL获取request_id并将其存储在cookie中。当用户完成登录后,检查cookie是否存在,然后相应地更新您的记录。
答案 1 :(得分:0)
通知和请求在Facebook上不是一回事。在你的情况下,你在谈论请求。请求ID作为GET参数'request_ids'传递给应用程序,这是一个以逗号分隔的列表。
要在登录对话框后访问此参数,您需要在重定向到OAuth对话框之前保存原始启动网址中的GET参数,并在重定向网址中传递它们。这样您就可以解决所有未来GET参数的问题。
如果您使用的是PHP,那么您正在寻找的功能是http_build_query。我非常不鼓励使用cookie来存储一次性且易于访问的URL参数。