3

Chromium で XMLHttpRequest を使用して HEAD 応答を取得して、圧縮された URL の場所の URL を取得しようとしていますが、失敗します:

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
4

2 に答える 2

4

Mohamed が指摘したように、これはクロス ドメイン リクエストであるため、ページをホストしているのと同じサイトにプロキシ サービスを作成する必要があります。

ブラウザでクロス ドメイン リクエストを明示的に許可していない限り、これはすべてのブラウザで失敗するはずです。Access-Control-Allow-OriginのW3C 仕様を介して bit.ly がクロス ドメイン要求をサポートしている場合、コードは機能します。

于 2010-04-09T10:52:56.730 に答える
1

クロスドメイン XHR は実行できません。JSP/Python/PHP/Ruby などの Web プログラミング言語を使用します。

于 2010-04-08T22:18:40.193 に答える