Facebook PHP SDK V5-获取页面访问令牌而非用户访问令牌


Facebook PHP SDK V5 - Get Page Access Token Not User Access Token

我正试图找出如何在Facebook粉丝页面上发布Facebook所称的"页面之声"。

我有以下代码:

$fb = new Facebook'Facebook([  
      'app_id' => '17xxxxxxxxxx',  
      'app_secret' => 'exxxxxxxxxx',  
      'default_graph_version' => 'v2.4',  
      ]);  
    $helper = $fb->getRedirectLoginHelper();
    try {
      $accessToken = $helper->getAccessToken();
    } catch(Facebook'Exceptions'FacebookSDKException $e) {
      // There was an error communicating with Graph
      echo $e->getMessage();
      exit;
    }
    if (isset($accessToken)) {
      // User authenticated your app!
      // Save the access token to a session and redirect
      $_SESSION['facebook_access_token'] = (string) $accessToken;
      // Log them into your web framework here . . .
      // Redirect here . . .
      print_r($accessToken);
            //// get following data from the db or just replace them ////
            $params["message"] = $title;
            $params["link"] = $targetUrl;
            $params["picture"] = $imgUrl;
            $params["description"] = $description;
            // post to Facebook
            try {
              // Returns a `Facebook'FacebookResponse` object
              $response = $fb->post('/229101234342377163/feed', $params, $accessToken);
            } catch(Facebook'Exceptions'FacebookResponseException $e) {
              echo 'Graph returned an error: ' . $e->getMessage();
              exit;
            } catch(Facebook'Exceptions'FacebookSDKException $e) {
              echo 'Facebook SDK returned an error: ' . $e->getMessage();
              exit;
            }
            $graphNode = $response->getGraphNode();

当这个运行时,我得到错误:

Graph returned an error: Unsupported post request.

据我所知,我需要访问我试图发布到的页面令牌?我该怎么做?请帮忙!

您也需要获得页面访问令牌,下面是如何做到这一点。它将为您提供所有页面及其相应访问令牌的列表。

https://developers.facebook.com/docs/facebook-login/access-tokens#pagetokens

"不支持的发布请求"也可能意味着您的应用程序仍处于测试模式。