Я пытаюсь позвонить (частному) веб-сервису RESTful с помощью запроса GET, используя $ jQuery.get (). Но когда я получаю, я не получаю данные ответа (хотя я получаю код ответа 200 OK!).
Когда я делаю точно такой же вызов из PHP (file_get_contents ()) или просто вставляя URL-адрес GET в окно браузера, я получаю ответ (JSON) очень хорошо.
Используя Firebug, я не вижу абсолютно никакой разницы между заголовками запросов, которые я отправляю, когда делаю запрос из jQuery, и когда я вставляю URL в свой браузер. Единственное отличие состоит в том, что jQuery добавляет заголовки «Referer» и «Origin» - однако , я принудительно добавил эти два заголовка в мой прямой запрос браузера с помощью расширения ModifyHeaders в Firefox, и я все еще получаю данные обратно, поэтому сервис не может быть отфильтрован по Referer / Origin.
По сути, мне интересно, что, черт возьми, происходит, если я могу сделать два, казалось бы, идентичных запроса, но не получить ответа, когда он через jQuery. Есть ли какой-то «скрытый» заголовок или параметр, который я не вижу, который сервер может использовать, чтобы определить, что запрос был отправлен через JavaScript?
Мой код прост: $.get("http://example.com/json.php?q=sometext", function(response) { alert(response); });
Спасибо.