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

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

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

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

请参阅使用jQuery从AJAX调用中读取标头 。 在使用jQuery进行AJAX调用之前,请参阅设置标头

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

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

使用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()