2014-02-18 4 views
0

Im пытается сделать запросы к Rest (метод PUT) удаленного APIXmlHttpRequest междоменное

var xhReq = new XMLHttpRequest(); 
xhReq.open("PUT", "http://api-easybib.apigee.com/2.0/rest/cite", true); 
xhReq.setRequestHeader('Content-Type', 'application/json'); 
var jsonString = "{...}"; 

xhReq.send(JSON.stringify(jsonString)); 

var serverResponse = xhReq.responseText; 

он терпит неудачу с заголовком

Нет 'Access-Control-Allow-Origin'

хотя мне удалось совершить звонок через плагины браузера клиента отдыха.

Что мне не хватает?

ответ

0

Поскольку причины безопасности, все браузер не принимает запрос кросс-происхождения в Ajax с вашего сайта.

Чтобы браузер принял запрос на перекрестный запрос ajax, код сервера должен установить заголовок «Access-Control-Allow-Origin» для ответа, чтобы уведомить браузер о том, что он принимает запрос на перекрестный запрос ajax.

В плагине браузера (например: хром-приложение) хром разрешает конфигурацию разработчика отправлять запрос по перекрестному запросу. Таким образом, вы можете отправлять междоменный запрос в REST Client plugin. (http://developer.chrome.com/apps/app_external.html#manifest)

0

Добавьте Access-Control-Allow-Origin на сервере или использовать JSONP (см What is JSONP all about?)

+0

Вы имеете в виду сервер Rest? – itamar

+0

Да на сервере REST вы можете добавить заголовок Access-Control-Allow-Origin. – spassvogel

+0

Это не мой сервер. его служба «Отдых», и я знаю, что она поддерживает кросс-домен, как я упомянул. – itamar

Смежные вопросы