当我使用API发送通知请求时,它们会按预期到达。但是,在用户点击链接并接受应用权限后,通知仍然存在。
我需要打一些额外的电话来清除通知吗?我知道它会在一段时间后自动过期,但这似乎并不完全令人满意。
我错过了什么,或者这真的不可行吗?
这是在用户接受应用邀请时删除应用请求的方式。
当用户接受邀请时,即通过单击应用程序请求通知进入您的应用程序画布页面,Facebook 在“request_ids”参数中发送逗号分隔的 id。您可以使用图形 api 获取此请求并删除它,如下所示:
在这里,我删除了最后一个请求 id:
$ids = $_GET['request_ids'];
$id_arr = explode(",",$ids);
$count = count($id_arr);
$delete_url="https://graph.facebook.com/".$id_arr[$count-1]. "?access_token=" . $token . "&method=delete";
$result = file_get_contents($delete_url);
echo("Requests deleted (true or false) ?" . $result);
注意 request_ids 字段可能包含多个请求 id,如果他被多次邀请。我不确定,但您可能需要全部删除。