使用 Facebook Graph API 为页面“点赞”

Posted 2023-02-19

技术标签:

【中文标题】使用 Facebook Graph API 为页面“点赞”【英文标题】:'Like' a page using Facebook Graph API 【发布时间】:2011-03-04 21:56:23 【问题描述】:

使用 Graph API,我希望能够让授权用户“喜欢”一个页面。

我尝试发布以下内容

https://graph.facebook.com/$PAGE_ID/likes?access_token=$ACCESS_TOKEN /likes

【问题讨论】:

【参考方案1】: publish_actionshttps://graph.facebook.com/[User FB ID]/og.likes?object=OG_OBJECT_URL&access_token=USER_ACCESS_TOKEN

但是,您目前不能使用它来喜欢 Facebook 上的页面,如 documentation states:

对于未与 Facebook 集成的 Facebook 页面或网站 认证,开发者应该继续使用Like按钮 社交插件。

【讨论】:

我不认为您可以使用内置的like 阳离子来为页面点赞。你能确认一下吗? 是否有 facebook 开发人员资源说您不能在 facebook 页面上使用内置的赞。不是我不相信你,而是我试图理解为什么会这样。您是否指的是内置赞文档页面上的此声明:“应用程序对内置赞操作的使用,与任何 Open Graph 操作一样,需要提交和批准。对于 Facebook 页面或网站未与 Facebook Authentication 集成,开发者应继续使用 Like 按钮社交插件。"? 这是当我尝试点赞 Facebook 页面时从图形 API 返回的错误消息:“(#100) 这种类型的对象尚不支持点赞操作。” @BK。这是否真的意味着除了使用“赞”按钮插件之外,没有其他方法可以为 Facebook 页面点赞? 如何从我想要的页面中找到 OG_OBJECT_URL?【参考方案2】:

2016 年 6 月更新

/user_id/likes

您无法在此端点上执行此操作。

在以前的版本中,信息更清楚(见下面的引文),但结果是一样的:这是不可能的。

2014 年 5 月

/user-id/likes

您无法使用此优势发布,因为无法通过任何 API 为 Facebook 主页点赞。如果您希望人们能够为您的应用中的页面点赞,您应该使用点赞按钮。

这是能够给我一个问题答案的最明显和最明确的陈述。

【讨论】:

【参考方案3】:

如果您的应用是开放图形应用,现在您可以喜欢使用 api,不再需要按钮。

https://developers.facebook.com/docs/opengraph/actions/builtin/likes/

【讨论】:

如文档和 BK 的回答中所述,这不适用于 Facebook 页面,仅适用于其他对象【参考方案4】: edge.create
FB.Event.subscribe('edge.create',
    function(response) 
        alert('You liked the URL: ' + response);
        // ...
    
);

在回调中,您可以处理用户点赞页面时发生的情况,例如离开点赞页面或显示仅点赞的内容。

edge.create

【讨论】:

我认为 OP 正在询问如何以编程方式执行此操作,也许是通过自定义控件传递“喜欢”的一种方式。【参考方案5】:

我认为这是不允许的,除非是特定的合作伙伴网站,例如 yelp。原因是安全性,您可以在页面上放置一些 javascript,并让访问该页面的每个人在他们不知情的情况下“喜欢”它。

请参阅 Facebook 平台开发者论坛上的 How do I "Like" a URL?

【讨论】:

其实不然 - 图形 api 使用访问令牌通过要求用户明确授予对 facebook 应用程序的访问权限来防止此类安全问题。无论如何,我通过 facebook 将 iframe 嵌入到他们的喜欢按钮(打开图形 api)的首选路线解决了这个问题。 “喜欢”(通过 iframe 或 fbml)不是应用程序,因此不需要额外的权限,只需要您登录 facebook。我仍在寻找一种在 Facebook 托管的 iframe 中没有自定义 Like 按钮的方法。 卢克 - 我也是!让我们知道您是否找到了使用自定义按钮(在我的例子中是 android API)来点赞页面或应用的方法。【参考方案6】:

您可以使用 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
];

【讨论】:

以上是关于使用 Facebook Graph API 为页面“点赞”的主要内容,如果未能解决你的问题,请参考以下文章