如何使用 Facebook GRAPH API 删除 Facebook 评论帖子?
Posted
技术标签:
【中文标题】如何使用 Facebook GRAPH API 删除 Facebook 评论帖子?【英文标题】:How to delete a Facebook comment post using the Facebook GRAPH API? 【发布时间】:2011-05-15 13:27:29 【问题描述】:我开始研究这个是因为我希望能够删除 Facebook 活动墙上的评论,因为“删除帖子”似乎不适用于活动墙上的 cmets。但是,由于我不知道是否有可能,我决定看看我是否可以手动删除我首先在自己的墙上发布的帖子,因为这是可能的。注意我不使用任何 SDK;我只是在构建 URL 并在 Firefox v3.6.17 的地址栏中输入它。
自从我现在开始工作以来,这些帖子对我帮助很大: Delete facebook post with Graph API - trouble getting this to work 和 Facebook SDK and Graph API Comment Deleting Error
我可以通过以下方式查看评论数据及其所有字段:
https://graph.facebook.com/[POST_ID]?access_token=[ACCESS_TOKEN]
`where [POST_ID] and [ACCESS_TOKEN] were got using the graph API.`
但是,我应该将“method=delete”命令放在 URL 的什么位置?我试着把它放在最后,比如
https://graph.facebook.com/[POST_ID]?access_token=[ACCESS_TOKEN]?method=delete
但这会导致 OAuthException 声明“无效的访问令牌签名”,因为它似乎将该方法作为访问令牌的一部分来读取。
我试着把它放在 post_id 之后
https://graph.facebook.com/[POST_ID?method=delete?access_token=[ACCESS_TOKEN]
但这会导致异常(不支持的方法),因为它认为“access_token=[ACCESS_TOKEN]”是被调用方法的一部分。
我看到上面引用的一篇文章指出,在使用删除时,我必须将用户 ID 添加到对象 ID
DELETE https://graph.facebook.com/673509687_104812882909249?access_token=access_token
`where 673509687 is my userID and 104812882909249 is the objectID`
但是当我进入时
DELETE https://graph.facebook.com/[POST_ID?access_token=[ACCESS_TOKEN]
在 Firefox 地址栏中,它无法识别它(我不认为它会)并将其用作 google 搜索查询。
如果我有comment_id 和access_token 使用网络浏览器,我如何删除评论?
【问题讨论】:
我再次尝试通过发送HTTP 1.1 DELETE方法使用程序发送HTTP方法并得到以下响应:"error":"type":"OAuthException","message":"(#200) The user hasn't authorized the application to perform this action"
我错过了什么?
【参考方案1】:
你的网址有很大问题:
https://graph.facebook.com/[POST_ID]?access_token=[ACCESS_TOKEN]?method=delete
应该是:
https://graph.facebook.com/[POST_ID]?access_token=[ACCESS_TOKEN] & method=delete
同样,
https://graph.facebook.com/[POST_ID?method=delete?access_token=[ACCESS_TOKEN]
应该是:
https://graph.facebook.com/[POST_ID?method=delete & access_token=[ACCESS_TOKEN]
所以你必须在输入参数之前使用?,然后在每个参数之间使用&,并且顺序应该没有任何重要性..
【讨论】:
啊,谢谢。至少现在我可以用浏览器而不是单独的程序发送它。浏览器现在仍然返回相同的错误: "error": "type": "OAuthException", "message": "(#200) The user hasn't authorized the application to perform this action"
什么应用程序?我是否必须创建一个 FB 应用程序才能操作图表(删除评论)?
@V.K.您在获取访问令牌时是否要求publish_stream
许可?它是发布/删除所必需的..
@dwarfy 我该怎么做?我刚刚从 developers.facebook.com/docs/reference/api 复制并粘贴了 access_token。我认为有不同级别的访问令牌? (提醒一下,我现在没有使用 SDK 或 Facebook 应用程序来做这些事情)。
根据access_token的权限"read_stream": 1
是否需要access_token中的publish_stream权限才能删除对象?另一方面,groups.google.com/group/rpx-developers/browse_thread/thread/… 表示,一旦授予 read_stream,就可以发布帖子。
是的,您需要一个应用程序来操作 Graph API,否则任何人都可以编辑任何内容,而您将无法阻止他们:/以上是关于如何使用 Facebook GRAPH API 删除 Facebook 评论帖子?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Graph API 获取家乡的 facebook 好友列表?
如何使用 Facebook Graph API 获取群组视频列表?
Facebook Graph API 分页如何工作以及如何使用它来迭代 facebook 用户提要?
如何使用 Facebook Graph API 编辑现有事件