Я потратил 2 дня на поиск любых доступных ресурсов для учебника/примера/документа для PHP PHP SDK с помощью Graph API для получения групповой подачи и подачи страницы. Мой вопрос может быть дубликат/похожий на сообщение здесь.
Я прошел через PHP SDK Doc. Меня могут упускать из виду или искать не в том месте. В принципе, я хочу понять:
Я использую facebook-php-sdk-v4-5.0.0
Наконец-то я дошел до ответа на свои вопросы. Спасибо всем, что обратили ваше внимание и ответили. Но, пожалуйста, позвольте мне опубликовать свой собственный ответ, поскольку я, наконец, смогу понять это и надеюсь, что это может помочь тем, кто новичок в Graph API, как я.
Я понимаю это, читая MarkDowns из загруженной папки документов API Facebook, как показано ниже:
C:\facebook-PHP-СДК-v4-5.0.0\Docs
Ниже приведен фрагмент кода для моего требования:
<?php
require_once( 'Facebook/autoload.php' );
use Facebook\Facebook;
use Facebook\FacebookApp;
use Facebook\FacebookRequest;
$app_id = "appid";
$secret = "secret";
$access_token = "accesstoken";
$fb = new Facebook([
'app_id' => $app_id,
'app_secret' => $secret,
'default_graph_version' => 'v2.5',
'default_access_token' => $access_token,
]);
// Create request
// $fbApp = new FacebookApp($app_id, $secret);
// $request = new FacebookRequest($fbApp, $access_token, 'GET', '/GROUPID/posts');
// Alternative request
// $request = $fb->request('GET', '/GROUPID/posts');
// Send the request to Graph
try {
// $response = $fb->getClient()->sendRequest($request);
$response = $fb->get('/GROUPID/posts');
} catch(Facebook\Exceptions\FacebookResponseException $e) {
// When Graph returns an error
echo 'Graph returned an error: ' . $e->getMessage();
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
// When validation fails or other local issues
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
echo "<pre>";
// print_r($response->getDecodedBody());
$decodedBody = $response->getDecodedBody();
$data = $decodedBody['data'];
foreach ($data as $key => $value) {
try {
$request = $fb->request('GET', '/'.$value['id'].'?fields=id,message,picture,object_id,attachments');
$post = $fb->getClient()->sendRequest($request);
} catch(Facebook\Exceptions\FacebookResponseException $e) {
// When Graph returns an error
echo 'Graph returned an error: ' . $e->getMessage();
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
// When validation fails or other local issues
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
print_r($post);
}
Результат API-интерфейса Graph API
Использовать PHP SDK v5
Используйте для Group feed этот код
$request = new FacebookRequest(
$session,
'GET',
'/{group-id}/feed'
);
$response = $request->execute();
$graphObject = $response->getGraphObject();
Для использования этой страницы используйте этот код.
$request = new FacebookRequest(
$session,
'GET',
'/{page-id}/feed'
);
$response = $request->execute();
$graphObject = $response->getGraphObject();
READING
вкладкуREADING
чтобы увидеть пример PHP: P. Но это для 5.0, пожалуйста, прочитайте (Facebook PHP SDK Changelog) [ sammyk.me/upgrading-the-facebook-php-sdk-from-v4-to-v5], чтобы увидеть различия двух версий.