Я использую Facebook Query Language (FQL) для получения информации о пользователе, когда я уже знаю его идентификатор пользователя. Когда я ввожу следующий URL-адрес в Firefox, он возвращает правильный XML-запрос:
http://api.facebook.com/method/fql.query?query=SELECT name FROM user WHERE 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.
Есть идеи? Благодарю.