2

Я пытаюсь получить ответ ГОЛОВЫ с XMLHttpRequest в Chromium для retrive местоположения URL сжатой URL, но это не удается:ГОЛОВА XMLHttpRequest на Chromium

var ajax = new XMLHttpRequest(); 
ajax.onreadystatechange = function() { if (ajax.readyState == 4) alert(ajax.getResponseHeader("Location")) }; 
ajax.open('HEAD', "http://bit.ly/4Agih5", false); 
ajax.send(); 

// Refused to get unsafe header "Location" 
// Error: NETWORK_ERR: XMLHttpRequest Exception 101 
+0

Это только не удается в Chrome? Я не уверен, что вы можете делать то, что вы пытаетесь перекрестно. –

ответ

4

Как указал Мохамед, вам нужно будет создать прокси-сервис на том же сайте, на котором размещается ваша страница, поскольку это перекрестный домен запрос.

Это должно быть неудачно во всех браузерах, если только вы явно не разрешили перекрестные запросы домена в вашем браузере. Если bit.ly поддерживал запросы кросс-домена через W3C spec для Access-Control-Allow-Origin, тогда ваш код будет работать.

+0

Ваш язык немного странный, когда речь идет о спецификации W3C Access Control. Вы также имеете в виду не существующий заголовок («Access-Control-Allow-Max-Age»), в то время как вы на самом деле должны были говорить о «Access-Control-Allow-Origin». –

+0

@Bruce, ссылка правильная, мой ввод неправильный. – Kinlan

+0

Исправлено это для вас (и людей, следующих за ним) – mplungjan

1

Вы не можете сделать XHR следует междоменного. Используйте веб-язык программирования, такой как JSP/Python/PHP/Ruby/etc ..