Facebook graph api 如何使用getAccessToken()获取facebook个人资料帖子?

Facebook graph api 如何使用getAccessToken()获取facebook个人资料帖子?,facebook-graph-api,facebook-php-sdk,facebook-access-token,Facebook Graph Api,Facebook Php Sdk,Facebook Access Token,我实际上想做的是从我的个人facebook个人资料页面(这不是粉丝页面)检索我的帖子/状态,并将它们显示在我的网站上。另外,请注意,每一个访问我的网站的用户都应该能够查看我的状态,而不必进行身份验证或类似的操作。这是需要在服务器端生成的内容 我知道您可以从这样的URL检索JSON字符串,因为我从facebook开发者(Graph API Explorer)页面尝试了它,这正是我所需要的 问题是,当我从Graph API Explorer生成访问令牌时,我可以选择权限,它会根据选择的权限(如用户状

我实际上想做的是从我的个人facebook个人资料页面(这不是粉丝页面)检索我的帖子/状态,并将它们显示在我的网站上。另外,请注意,每一个访问我的网站的用户都应该能够查看我的状态,而不必进行身份验证或类似的操作。这是需要在服务器端生成的内容

我知道您可以从这样的URL检索JSON字符串,因为我从facebook开发者(Graph API Explorer)页面尝试了它,这正是我所需要的

问题是,当我从Graph API Explorer生成访问令牌时,我可以选择权限,它会根据选择的权限(如用户状态、状态更新等)分别生成令牌

现在我想通过使用PHP-SDK来实现这一点,但我不知道如何生成与我在Graph API Explorer中生成的相同的访问令牌

基本方法是调用getAccessToken(),如下所示。问题是,当我使用这个简单方法生成的令牌时,返回的JSON字符串将只显示我的基本信息

$config = array(
  'appId' => 'MY_APP_ID',
  'secret' => 'MY_APP_SECRET',
);

$facebook = new Facebook($config);
$ACCESS_TOKEN = $facebook->getAccessToken();
如何为实例添加权限?我应该在某个地方指定参数吗?我花了很多时间阅读facebook API文档和其他一些论坛,但没有找到我需要的答案

最后,如果我得到了正确的访问令牌,那么我只需检索JSON字符串并用我需要的东西对其进行解析


谢谢。

您需要在代码中添加权限,以便在作用域中使用fb js sdk add登录,如下示例:

$("#login").on('click',function(){
 FB.login(function(response){
 console.log(response);
 },{scope: 'email,manage_pages,read_insights'});
});
或在php fb sdk中使用下一种形式:

<?php
require 'server/fb-php-sdk/facebook.php';

$app_id = 'APP_ID';
$app_secret = 'APP_SECRET';
$app_namespace = 'APP_NAMESPACE';
$app_url = 'https://apps.facebook.com/' . $app_namespace . '/';
$scope = 'email,publish_actions';

// Init the Facebook SDK
$facebook = new Facebook(array(
     'appId'  => $app_id,
     'secret' => $app_secret,  
));

// Get the current user
$user = $facebook->getUser();

// If the user has not installed the app, redirect them to the Login Dialog
if (!$user) {
    $loginUrl = $facebook->getLoginUrl(array(
    'scope' => $scope,
    'redirect_uri' => $app_url,
    ));

    print('<script> top.location.href=\'' . $loginUrl . '\'</script>');
 }
       ?>
您可以在此链接中找到有关扩展权限的所有信息


你好。但是你提供的这个解决方案根本不是我需要的。我只想在我的个人网页中检索我的个人Facebook个人资料状态,并最终显示,比如说最近的5个。就这样。没有其他用户的身份验证或类似的东西。
        $scope = 'email,publish_actions';