我使用
成功发送了xml.http.requestvar createCORSRequest = function(method, url) {
var xhr = new XMLHttpRequest();
if ("withCredentials" in xhr) {
// Most browsers.
xhr.open(method, url, true);
} else if (typeof XDomainRequest != "undefined") {
// IE8 & IE9
xhr = new XDomainRequest();
xhr.open(method, url);
} else {
// CORS not supported.
xhr = null;
}
return xhr;
};
var url = 'http://www.whatismyip.com';
var method = 'GET';
var xhr = createCORSRequest(method, url);
xhr.onload = function() {
// Success code goes here.
};
xhr.onerror = function() {
// Error code goes here.
};
xhr.setRequestHeader('referer', 'http://www.google.com');
xhr.send();
然而,我无法定义我的引用者。添加自定义引用的正确方法是什么?
答案 0 :(得分:11)
你做不到。 XMLHttpRequest specification forbids更改referer
标题(这会阻止其中的网站绕过某些网站使用引用的安全检查)。
如果header是以下标题之一的不区分大小写的匹配项,请终止这些步骤:
- ...
- Referer的
- ...
答案 1 :(得分:0)
您可以尝试以下操作:
xhr.setRequestHeader('X-Referer', window.location.href);
然后阅读此自定义 X-Referer 标头。