我希望使用PHP SDK 4获得页面的最后5篇帖子。我已经厌倦了这种方式
<?php
session_start();
// added in v4.0.0
require_once 'autoload.php';
use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\Entities\AccessToken;
use Facebook\HttpClients\FacebookCurlHttpClient;
use Facebook\HttpClients\FacebookHttpable;
FacebookSession::setDefaultApplication( 'app_id','app_secret' );
$session = new FacebookSession('access_token');
$request = new FacebookRequest(
$session,
'GET',
'page_id'
);
$response = $request->execute();
$graphObject = $response->getGraphObject();
?>
我如何找到ACCESS TOKEN并获得最近的帖子?
答案 0 :(得分:2)
您可以使用App Acess令牌:
$access_token = APPID . '|' . APPSECRET;
...但你不需要自己生成它,我认为你只需要调用feed端点 - 并包含限制只能获得最后5个条目:
$request = new FacebookRequest(
$session,
'GET',
'/page_id/feed?limit=5'
);
来源:https://developers.facebook.com/docs/graph-api/reference/v2.1/page/feed
未经用户授权,SDK应使用App Access令牌。请记住,这仅适用于已发布的页面。未发布的页面只能使用页面令牌(或页面管理员的用户令牌)读取。有些页面受年龄或国家限制,您也无法使用App Token。
答案 1 :(得分:1)
您还可以像这样获取访问令牌:
$session = FacebookSession::newAppSession();
$access_token = $session->getAccessToken();
$session = new FacebookSession($access_token);