问题就像标题一样。
在命令行中,我们可以输入
curl -H "header_name: header_value" "http://example"
来导航到 http:/example 与一个自定义的请求头,如上图所示。
问:如果我需要写一个JavaScript来做同样的事情,应该怎么做?
var url = 'https://example';
var myRequest = new XMLHttpRequest();
myRequest.open('GET', url ,false);
myRequest.setRequestHeader('header-name','header-value');
myRequest.send();
我试过这段代码,没有语法错误,但页面没有变化。因此,我真的不知道我是否修改了请求头。
下面是你可以处理这个问题的方法。
var req = new XMLHttpRequest();
req.open('GET', 'http://example', true); //true means request will be async
req.onreadystatechange = function (aEvt) {
if (req.readyState == 4) {
if(req.status == 200)
//update your page here
//req.responseText - is your result html or whatever you send as a response
else
alert("Error loading page\n");
}
};
req.setRequestHeader('header_name', 'header_value');
req.send();