Facebook 开放图形发布

Facebook 开放图形发布,facebook,oauth,facebook-opengraph,posting,Facebook,Oauth,Facebook Opengraph,Posting,我会尽量不把这件事说得太冗长。 基本上,使用OpenGraph,如果用户“喜欢”一个网页(在我的示例中是一个博客),您可以对其进行设置,以便在添加新帖子时,在他们的新闻提要中显示一个链接到该页面的条目 关于这是如何做到的,请参见此处: 基本上,你将OG元标签添加到你的站点,创建一个应用程序,链接到OG标签中的app_id,就像页面一样,然后它将创建一种只有管理员才能看到的不可见的facebook页面——用户将被带到该站点。关键的是,因为人们“喜欢”这个页面,你可以在这个页面上写文章,用户就会看到

我会尽量不把这件事说得太冗长。 基本上,使用OpenGraph,如果用户“喜欢”一个网页(在我的示例中是一个博客),您可以对其进行设置,以便在添加新帖子时,在他们的新闻提要中显示一个链接到该页面的条目

关于这是如何做到的,请参见此处:

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

奇怪的是,这对我昨天起作用了,但突然停止了作用。没什么变化,只是停止了工作

所以我创建了一个博客,添加了正确的meta-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

任何帮助都将不胜感激,因为这让我发疯

干杯
Pete

用户是否授权您的应用程序?您需要在第一次对用户进行身份验证,以便应用程序能够代表用户发布:

您需要请求发布流权限。 以下是参考资料:

之后,您可以按照示例发布或使用您当前拥有的内容。(请记住保留访问令牌)


下面是一个JS的例子,Hi Juan,不幸的是,这不是我想要做的。如果它是用户发布的,是的,用户需要验证它,但是当你喜欢一个页面(不是facebook页面,比如博客页面)时,会为它创建一个facebook页面,但你永远看不到它。但是,使用Open Graph,您可以从该页面发布。这很难解释,但这篇文章应该解释一下: