Я использую Facebook Query Language (FQL) для получения информации о пользователе, когда уже знаю его идентификатор. Когда я ввожу следующий URL в Firefox, он возвращает правильный XML для запроса:
http://api.facebook.com/method/fql.query?query=SELECT имя ОТ пользователя ГДЕ uid = ** '
А именно, возвращает имя пользователя.
Примечание: пожалуйста, не предлагайте использовать Graph API, так как на самом деле я буду использовать FQL для вещей, которые еще не реализованы в Graph, например для сетей, это всего лишь простой пример.
НО, когда я захожу на страницу на моем сайте, которая выполняет следующий код PHP:
$url = 'http://api.facebook.com/method/fql.query?query=SELECT name FROM user WHERE uid=**********';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo($response);
Понятно:
Method Not Implemented
Invalid method in request
Это также не должно быть проблемой аутентификации, имя является общедоступным.
Для более глубокого понимания, когда я ввожу любой искаженный запрос FQL, страница PHP правильно возвращает XML-код ошибки, так же как и при вводе URL-адреса в Firefox. Только когда я ввожу ПРАВИЛЬНО СФОРМИРОВАННЫЙ запрос FQL, он отличается от того, что я вижу в Firefox, а именно выдает ошибку, описанную выше, которая даже не является XML.
Есть идеи? Благодарю.