Php 如何在没有访问令牌的情况下显示来自我网站的facebook feed消息?

Php 如何在没有访问令牌的情况下显示来自我网站的facebook feed消息?,php,javascript,jquery,facebook,facebook-graph-api,Php,Javascript,Jquery,Facebook,Facebook Graph Api,我有一个facebook站点(站点,而不是profil wall),我想在网页上显示消息提要。如果我使用的话,这个已经很好用了 https://graph.facebook.com/177610425663218/feed 但我需要一个访问令牌。使用I可以生成一个临时令牌 我知道我可以创建一个OAuth,但我不想让我网页上的每一个访问者都登录facebook只是为了查看提要。一定有别的办法。。。可能使用PHP而不是Javascript?提供了一个可以嵌入的所有插件的列表。但是,如果要向非fb登

我有一个facebook站点(站点,而不是profil wall),我想在网页上显示消息提要。如果我使用的话,这个已经很好用了

https://graph.facebook.com/177610425663218/feed
但我需要一个访问令牌。使用I可以生成一个临时令牌

我知道我可以创建一个OAuth,但我不想让我网页上的每一个访问者都登录facebook只是为了查看提要。一定有别的办法。。。可能使用PHP而不是Javascript?

提供了一个可以嵌入的所有插件的列表。但是,如果要向非fb登录的用户显示提要,则此操作不起作用

要解决您的问题,请使用服务器端脚本访问并显示此提要。如果此提要来自FB页面,则需要具有“管理页面”权限的访问令牌。使用该功能,您可以使用以下(PHP)代码获取内容:

您还可以通过添加分页参数(如自、限制、直到等)自定义此查询。有关文档,请参阅

此方法具有以下优点:

  • 您的访问令牌在服务器上是安全的,公众不可见
  • 即使是未登录的用户也可以看到您的提要
  • 您可以自定义提要的外观,因为您可以控制UI
缺点:

  • 需要您编写代码并积极维护一段代码,它除了充当代理之外什么都不做。每次FB更改其对象的结构时,您都需要更改此代码

您可以使用
https://www.facebook.com/feeds/page.php?id=&format=json
这将返回一个json对象,不需要访问令牌

您还可以使用不同的格式,如xml和rss20


希望这能有所帮助。

在windows 8应用商店应用程序中执行此操作,似乎可以正常工作


url=“”+fbtoken

尽管这个问题已经得到了回答。我希望这能帮助其他人

我一直在为一个内部CMS开发一个插件,它需要直接从用户的url获取facebook提要。这就是我的结局

$url = 'url_pulled_from_database';
$url = str_replace('http://www.', 'http://graph.', $url);
$get_id = file_get_contents($url);
$get_id = json_decode($get_id, true);   
$fbID = $get_id['id'];

//THEN CALL THE FUNCTION        
fb_parse_feed($fbID, $maxnumber);
我不能为fb_parse_feed函数负责,但是你可以在这里找到它


一旦实现,只要使用url,它就可以在任何公共页面上发挥魅力。

我认为如果没有访问令牌,您无法再这样做,但请查看我的答案,了解获取一个和检索所需提要的详细步骤。

如果您只有一个或两个页面,并且希望快速配置内容,您只需转到graphapi浏览器()并从中生成一个。如果您不想使用此功能,则需要一个应用程序,该应用程序将使用FB.login()或类似的FB身份验证机制从用户处获取此功能。谢谢。我已经尝试了Graph API Explorer,但我在那里得到的令牌只是临时的:“验证访问令牌时出错:会话在unix时间已过期…”。我需要一个很长的时间令牌…这太棒了!你有关于这个API的任何文档吗?这和建议的是一样的,如果你得到一个API,它会工作得很好,但是更好,因为它不需要令牌。仍然+1感谢您的努力,欢迎使用Stackoverflow:)这将对我非常有帮助。你能在一个公共页面上展示如何使用它的例子吗。这页怎么说?举例来说
$url = 'url_pulled_from_database';
$url = str_replace('http://www.', 'http://graph.', $url);
$get_id = file_get_contents($url);
$get_id = json_decode($get_id, true);   
$fbID = $get_id['id'];

//THEN CALL THE FUNCTION        
fb_parse_feed($fbID, $maxnumber);