使用 Graph API,我希望能够让授权用户“喜欢”一个页面。
我尝试发布以下内容
https://graph.facebook.com/${PAGE_ID}/likes?access_token=${ACCESS_TOKEN}
我在 JSON 响应正文中收到 HTTP 错误 500,并伴有“无效的 post_id 参数”。看起来该/likes
资源适合喜欢墙帖而不是页面。如何让它与页面一起使用?
使用 Graph API,我希望能够让授权用户“喜欢”一个页面。
我尝试发布以下内容
https://graph.facebook.com/${PAGE_ID}/likes?access_token=${ACCESS_TOKEN}
我在 JSON 响应正文中收到 HTTP 错误 500,并伴有“无效的 post_id 参数”。看起来该/likes
资源适合喜欢墙帖而不是页面。如何让它与页面一起使用?
Facebook 已宣布通过使用官方内置的 Like 动作支持在 Facebook 之外点赞 URL 。你需要有publish_actions
权限。此图的网址是:
https://graph.facebook.com/[User FB ID]/og.likes?object=OG_OBJECT_URL&access_token=USER_ACCESS_TOKEN
但是,您目前不能使用它来喜欢 Facebook 上的页面,如文档所述:
对于未集成 Facebook Authentication 的 Facebook Pages 或网站,开发者应继续使用 Like 按钮社交插件。
2016 年 6 月更新
正如有关创建/更新/删除的/{user_id}/likes
文档页面中所述,仍然无法使用 Facebook API 为页面点赞:
您无法在此端点上执行此操作。
在以前的版本中,消息更清晰(见下面的引文),但结果是一样的:这是不可能的。
2014 年 5 月
/{user-id}/likes
文档页面状态关于发布Facebook 页面的喜欢:
您无法使用此边缘发布,因为无法通过任何 API 为 Facebook 页面点赞。如果您希望人们能够喜欢您应用中的页面,则应该使用“喜欢”按钮。
这是能够给我一个问题答案的最明显和最明确的陈述。
如果您希望在 facebook 中的页面选项卡或画布页面中使用此功能(比如允许从喜欢的页面中喜欢该页面),您可以使用 Tom Wells 在他对 Luke 的回复中提出的建议。您首先在您的页面上嵌入他们喜欢按钮的 iframe 版本,然后edge.create
在您的 JS 中简单地监听事件,如下所示:
FB.Event.subscribe('edge.create',
function(response) {
alert('You liked the URL: ' + response);
// ...
}
);
在回调中,您可以处理用户喜欢该页面时发生的情况,例如导航离开点赞页面或显示仅喜欢的内容。
当用户单击 iFrame like 按钮时,您的 JS 代码应该会收到edge.create
事件,假设 iFrame 已配置为指向相关页面的 url。
如果您的应用程序是开放图形应用程序,现在您可以喜欢使用 api,并且不再需要按钮。
https://developers.facebook.com/docs/opengraph/actions/builtin/likes/
我相信这是不允许的,除非是特定的合作伙伴网站,比如 yelp。原因是安全性,您可以在页面上放置一些 javascript,并让访问该页面的每个人在他们不知情的情况下“喜欢”它。
请参阅我如何“喜欢”一个 URL?在 Facebook 平台开发者论坛上
您可以使用 Facebook api 使用以下代码为对象及其对象 id 点赞
[FBRequestConnection startForPostWithGraphPath:[NSString stringWithFormat:@"/%@/likes",{object_id}] graphObject:nil completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
//do you customisation post like here
}];