Я в процессе миграции с 2.x PHP SDK на 3.x.Все вызовы нескольких запросов прерваны, и я не смог понять, как их решить.
Вход в Facebook с использованием oauth javascript работает и позволяет получить доступ к данным для текущего пользователя на стороне сервера.Я предполагаю, что это подтверждает, что мой токен доступа является законным.
Я пробовал следующие варианты кода и каждый раз получаю ошибки:
Старый путь:
$id = $fb->getUser(); // RETURNS A VALID USER ID
$fql = '{ "friends" : "SELECT uid FROM user WHERE has_added_app=1 and uid IN (SELECT uid2 FROM friend WHERE uid1 = '.$id.')", "profiles" : "SELECT uid, name, pic_square FROM user WHERE uid IN (SELECT uid FROM #friends)"}';
$response = $fb->api( array('method' => 'fql.multiquery','queries' => $fql));
Выдает ошибку: PHP Фатальная ошибка: Uncaught Исключение: 102: Требуется пользовательский сеанс \ n брошенный
Предполагаемый новый способ сделать это:
$id = $fb->getUser(); // RETURNS A VALID USER ID
$fql = '{ "friends" : "SELECT uid FROM user WHERE has_added_app=1 and uid IN (SELECT uid2 FROM friend WHERE uid1 = '.$id.')", "profiles" : "SELECT uid, name, pic_square FROM user WHERE uid IN (SELECT uid FROM #friends)"}';
$response = $fb->api( array('method' => 'fql.query','query' => $fql));
Дает ошибку: PHP Фатальная ошибка: Uncaught Исключение: 601: Ошибка парсера: неожиданно '{' в позиции0
Приветствуется любая помощь в понимании того, как выполнять многозапросы с использованием нового PHP SDK.