Question

I'm trying to get the HEAD response with an XMLHttpRequest in Chromium to retrive the location URL of a compressed url, but it fails:

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
Was it helpful?

Solution

As Mohamed indicated, you will have to create a proxy service on the same site that you are hosting your page on as this is a cross domain request.

This should be failing in all browsers, unless you have explicitly allowed cross domain requests in your Browser. If bit.ly supported cross domain requests via the W3C spec for Access-Control-Allow-Origin then your code would work.

OTHER TIPS

You cannot do cross-domain XHRs. Use a web programming language like JSP/Python/PHP/Ruby/etc..

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top