我需要获得50个随机的Facebook好友并将结果分配给此函数user_ids
中使用的此变量sendRequestToRecipients()
。我想做的就像这个例子:
Stack Overflow上的所有示例都不起作用,我需要一些帮助才能使此功能正常工作。
这是我的代码:
<body>
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<input type="button"
onclick="sendRequestToRecipients();return false;"
value="Send Request to Users Directly"/>
<input type="button"
onclick="sendRequestViaMultiFriendSelector(); return false;"
value="Send Request to Many Users with MFS"
/>
</p>
<script>
FB.init({
appId : '398994226827517',
status : true,
oauth : true,
Xfbml : true,
cookie : true,
frictionlessRequests : true
});
function sendRequestToRecipients() {
var user_ids = document.getElementsByName("user_ids")[0].value;
FB.ui({method: 'apprequests',
message: 'sample message',
to: 'user_ids'
}, requestCallback);
}
function sendRequestViaMultiFriendSelector() {
FB.ui({method: 'apprequests',
message: 'sample message'
}, requestCallback);
}
function requestCallback(response) {
// Handle callback here
}
</script>
答案 0 :(得分:2)
已批准的消息需要进行一些更改,例如以下
FB.api('/me/friends', function(friend) {
var user_ids = [];
$(friend.data).each(function(index, element) {
user_ids.push(element.id);
});
FB.ui({method: 'apprequests',
message: 'sample message'
to: user_ids
});
});
答案 1 :(得分:0)
为什么任何人都想邀请随机朋友加入应用?如果您这样做,您的应用可能会很快关闭垃圾邮件。让用户选择他们想邀请加入应用的人,不要试图强迫他们发送可能对该应用不感兴趣的随机朋友。
如果你真的必须这样做,你可以根据Requests Dialog documentation预填充'to'参数和你希望你的应用用户发送请求的用户的uid,文档中的示例是:
function sendRequestToRecipients() {
FB.ui({method: 'apprequests',
message: 'My Great Request',
to: '499802820,499802852'
}, requestCallback);
}
答案 2 :(得分:0)
如前所述,这对用户来说真的很烦人,因为他无法选择他的朋友。
如果你真的想这样做,这应该有效:
FB.api('/me/friends', function(friend) {
FB.ui({method: 'apprequests',
message: 'Random Friends',
to: 'friend[0].id,friend[1].id,friend[2].id'
}, requestCallback);
});
它将选择前3个朋友(不是随机但更好)。
答案 3 :(得分:-1)
PHP:
<?php
$fql = "SELECT uid FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1=me()) order by rand() limit 20";
$response = $facebook->api(array(
'method' => 'fql.query',
'query' =>$fql,
));
$c="";
$ids = "";
foreach ($response as $key => $value) {
$ids .= $c.$value['uid'];
=',';
} ?>
JavaScript的:
FB.ui({
method : 'apprequests',
title : '<?php echo $app->title;?>',
message : "<?php echo $app->img_description;?>",
to: "<?php echo $ids;?>"
}, function (data) {});