0

我会尽量不要让这太啰嗦。基本上,使用 Open Graph,如果用户“喜欢”一个网页(在我的示例中为博客),您可以对其进行设置,以便在添加新帖子时,在他们的新闻提要中显示一个链接到该网页的条目。

有关据称是如何完成的,请参见此处:https ://developers.facebook.com/blog/post/465/

基本上,您将 OG 元标签添加到您的网站,创建一个应用程序,链接到 OG 标签中的 app_id,就像页面一样,然后它将创建一种只有管理员才能看到的不可见 facebook 页面 - 用户被带到代替网站。关键是,因为人们“喜欢”这个页面,你可以从那个页面写帖子,用户会看到它。

奇怪的是,这昨天对我有用,但突然停止工作。什么都没有改变,它只是停止工作。

所以我创建了一个博客,添加了正确的元 OG 标签,创建了一个应用程序,将 fb:app_id 标签添加到包含应用程序 ID 的博客中。

示例中的代码可以分为两部分。首先,获取访问令牌:

$access_token_url = "https://graph.facebook.com/oauth/access_token"; 
$parameters = "grant_type=client_credentials&client_id=" . $app_id . "&client_secret=" . $app_secret;
$access_token = file_get_contents($access_token_url . "?" . $parameters);

这很好用,它返回一个访问令牌。但是,示例的第二部分,从 facebook 页面发帖不起作用。

$apprequest_url = "https://graph.facebook.com/feed";
$parameters = "?" . $access_token . "&message=" . $mymessage . "&id=" . urlencode($ogurl) . "&method=post";
$myurl = $apprequest_url . $parameters;
$result = file_get_contents($myurl);

我得到的错误是:(#200)用户尚未授权应用程序执行此操作

Facebook 在过去 24 小时内是否更改了他们的 API?

任何帮助将不胜感激,因为这让我完全发疯了!

干杯皮特

4

1 回答 1

0

用户是否授权您的应用程序?您需要第一次对用户进行身份验证,以便应用程序可以代表他发布:http: //developers.facebook.com/docs/authentication/

您将需要请求 publish_stream 权限。这是一个参考:http: //developers.facebook.com/docs/reference/api/permissions/

之后,您可以按照示例发布或使用您当前拥有的内容。(记得保留access_token)

这是一个带有 JS 的示例https://developers.facebook.com/docs/reference/dialogs/feed/

于 2011-09-23T13:37:57.770 回答