XMLHttpRequestを使用してAJAX呼び出しを行うとき、ほとんどの要求ヘッダーをJavaScriptから変更できないようです。 Geckoブラウザでrequest.open()
の後にrequest.setRequestHeader
を呼び出す必要がある場合は、http://ajaxpatterns.org/Talk:XMLHttpRequest_Callを参照してください。 Refererを設定すると、設定されません(Firebugと改ざんデータを使用して送信されたリクエストヘッダーを見ました)。 User-Agentを設定すると、AJAX呼び出しが完全に混乱します。ただし、を設定すると、とContent-Typeが機能します。 RefererとFirefox 3のユーザーエージェントを設定できませんか?JavaScriptで要求ヘッダーを設定する
var request = new XMLHttpRequest();
var path="http://www.yahoo.com";
request.onreadystatechange=state_change;
request.open("GET", path, true);
request.setRequestHeader("Referer", "http://www.google.com");
//request.setRequestHeader("User-Agent", "Mozilla/5.0");
request.setRequestHeader("Accept","text/plain");
request.setRequestHeader("Content-Type","text/plain");
request.send(null);
function state_change()
{
if (request.readyState==4)
{// 4 = "loaded"
if (request.status==200)
{// 200 = OK
// ...our code here...
alert('ok');
}
else
{
alert("Problem retrieving XML data");
}
}
}
実際にはまだテストしていないツールもありますが、これらのヘッダーの両方を設定する必要はないはずです。実際に設定するのは本質的に疑わしいものです。 – annakata