删除Facebook应用程序请求不起作用
问题描述:
我的facebook应用程序向尚未添加应用程序的用户发送请求。当他们接受请求时,我试图删除它。目前,他们已经(自动)添加该应用并授权其使用他们的信息等。删除Facebook应用程序请求不起作用
我试图删除酷似它的文档中描述的要求:
if(isset($_REQUEST['request_ids'])) {
$reqs = explode(',', $_REQUEST['request_ids']);
foreach($reqs as $r) {
$full_req_id = $r . '_' . $this->_currentfbuser->getId();
$delete_success = $this->_facebook->api("/" . $full_req_id,'DELETE');
}
}
我反复检查$full_req_id
真的是request-id_user-id
,但我仍然得到这个错误:
Message: (#200) The entity backed by id ... cannot be seen by the current viewer (EntID: ...)
为什么我的应用程序禁止删除请求?不应该总是允许删除同一个应用程序发送的请求吗?
答
我用这段代码解决了它。 (我认为Facebook SDK在内部大致相同,但无论如何)
if(isset($_REQUEST['request_ids'])) {
$reqs = explode(',', $_REQUEST['request_ids']);
foreach($reqs as $r) {
$full_req_id = $r . '_' . $this->_currentfbuser->getId();
$delete_url = "https://graph.facebook.com/" .
$full_req_id . "?access_token=" . $this->_facebook->getAccessToken() . "&method=delete";
$result = file_get_contents($delete_url);
}
}