我想知道为什么不能使用setRequestHeader 设置cookie头.是否有任何特定原因或只是它们是由浏览器本身添加的,所以这些标题被禁用了?有安全问题吗?
- 编辑
我正在使用node.js并使用该xmlhttprequest模块.以下是测试代码:
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.withCredentials = true;
xhr.setRequestHeader('Cookie', "key=value");
xhr.send(null);
Run Code Online (Sandbox Code Playgroud)
这里我需要设置cookie-header,因为node.js' xmlhttprequest没有显式添加cookie-header(就像浏览器一样).尝试这样做时,xmlhttprequest给出错误" Refused to set unsafe header".
虽然我找到了一个补丁并成功发送了cookie标题.但是想知道为什么禁用它来设置cookie-header?无论我在哪里阅读,发现它是数据完整性和安全性所必需的,但在这种情况下可以违反什么安全性,在哪里都没有提到.我想评估这个数据完整性问题是否对node.js应用程序有效,如果我使用我的补丁.