需要发送一个 Facebook 应用程序的请求,以便当用户接受请求时,我需要检索发送它的人的姓名和接受它的人的姓名。有人可以分享一下 codr 的例子吗
问问题
549 次
2 回答
2
在发送邀请时,您可以添加任何要跟踪的数据,假设您要发送sender_name
,因此您的发送请求功能将如下所示:
FB.ui({
method: 'apprequests',
message: "has invited you to the app",
filters:['app_non_users'],
data: sender_name
}, function (response) {
});
当接收者来到您的应用程序点击发送的请求通知时,您可以检索数据并删除 php 中的请求,如下所示:
if(isset($_GET['request_ids']))
{
$request_ids = $_GET['request_ids'];
$request_ids = explode(",", $request_ids);
foreach($request_ids as $request_id)
{
$request_object = $facebook->api($request_id);
if(isset($request_object['data'])) $req_data = $request_object['data'];//you can now use the sent $req_data your way
$full_request_id = $request_id."_".$current_user_fbid;
$facebook->api("$full_request_id","DELETE");
}
}
于 2012-10-31T09:37:12.893 回答
1
我假设您将使用数据库。当用户邀请朋友时,发送的请求的响应将包含 response.request 和 response.to。将此 request_id 与用户和用户朋友 id(受邀朋友)一起存储。
function inviteuser(){
FB.ui({
method: 'apprequests',
message: "Apllications message goes here",
exclude_ids: [1, 2, 3],
filters:['app_non_users'],
data: "optional additional data you may pass for tracking"
}, function (response) {
if (response && response.to) {
//callback function, will be called after user invites his friend, response object will contain list of all users invited
//save response.to and response.request in database
}
});
}
当用户接受邀请时,即通过单击应用程序请求通知进入您的应用程序画布页面,Facebook 在“request_ids”参数中发送逗号分隔的 id。您可以获取此请求 ID 并与您的数据库进行比较以获取所需的信息。
于 2012-10-31T05:07:32.817 回答