我无法从我的网络应用程序中删除 Facebook 帖子。现在我知道Facebook 文档和其他 SO 帖子说要这样做:
You can delete objects in the graph by issuing HTTP DELETE requests to
the object URLs, i.e,
DELETE https://graph.facebook.com/ID?access_token=... HTTP/1.1
但由于我是个菜鸟,我不完全理解用 HTTP 请求删除的简短解释。由于我尝试时它不起作用,我假设简单地重定向到上面示例中形成的 url 不会删除任何内容。这意味着我现在必须了解 Web 开发的一些新领域……HTTP 请求。
这些是如何在php中完成的?php手册也没有多大帮助。
附加信息:
我尝试了许多不同的变体:
$facebook->api($post_url, 'DELETE', array('method'=> 'delete') );
我传递的 URL 是'/post_id'
. 在post_id
创建后捕获并存储到数据库中。此 id 与$_GET['story_fbid']
可以在任何帖子永久链接上找到的匹配。也许这不是正确的 id?我正在使用以下内容检索 id:
//post to wall
$postResult = $facebook->api($post_url, 'post', $msg_body );
//capture the id of the post
$this->fb_post_id = $postResult['id'];
当我运行上面的代码时,不会抛出任何错误。它被触摸是因为echo
它运行后的诊断。
这些是我传递给 api 的不同字符串组合$post_url
:
/postid api returns true, nothing is deleted from Facebook
/userid_postid api returns false, Error: (#100) Invalid parameter
/postid_userid api returns false, Error: (#1705) : Selected wall post for deletion does not exist
/accesstoken_postid api returns false, Error: (#803) Some of the aliases you requested do not exist
/postid_accestoken api returns false, Error: (#803) Some of the aliases you requested do not exist