是否可以使用javascript更改http请求的标头?

时间:2012-06-26 19:35:04

标签: javascript jquery ajax http

是否可以使用某种JavaScript来更改或设置HTTP请求的标头?

2 个答案:

答案 0 :(得分:10)

在下载javascript之前很久就会传递标题,更不用说解释了。简短的回答是否定的。

但是,如果您在ajax调用的上下文中讲话(让我们以jQuery为例),可以编写请求标头。

reading headers from an AJAX call with jQuery。 见setting headers before making the AJAX call with jQuery

但是,如果您的javascript是服务器端(例如node.js),那将是肯定的(可能不是自帖子提到HTML以来):

var body = 'hello world';
response.writeHead(200, {'Content-Length': body.length,'Content-Type': 'text/plain' });

答案 1 :(得分:9)

使用XMLHttpRequest对象,您可以使用setRequestHeader函数。

一些代码可以帮助您:

var xhr = new XMLHttpRequest()
xhr.open("GET", "/test.html", true);
xhr.setRequestHeader("Content-type", "text/html");

xhr.send();

方法setRequestHeader 必须在打开后和发送前调用。

更多信息: https://developer.mozilla.org/en/DOM/XMLHttpRequest#setRequestHeader()