在JavaScript上添加请求标头
问题描述:
我在准备一个JavaScript。下面是相同的代码:在JavaScript上添加请求标头
<html>
<head>
<body>
<script>
var getJSON = function(url, successHandler, errorHandler) {
var xhr = typeof XMLHttpRequest != 'undefined'
? new XMLHttpRequest()
: new ActiveXObject('Microsoft.XMLHTTP');
xhr.open('get', url, true);
xhr.onreadystatechange = function() {
var status;
var data;
if (xhr.readyState == 4) {
status = xhr.status;
if (status == 200) {
data = JSON.parse(xhr.responseText);
successHandler && successHandler(data);
} else {
errorHandler && errorHandler(status);
}
}
};
xhr.send();
};
getJSON('https://example.com/lol.json', function(data) {
alert('Your Token is: ' + data.token);
}, function(status) {
alert('Something went wrong.');
});
</script>
</body>
</head>
</html>
所以,这个文档片断是没有“访问控制允许来源”,我在本地运行这一点,所以我已经通过禁止使用file:///
铬的安全功能。
chrome.exe --user-data-dir="C:/Chrome dev session" --disable-web-security
我需要运行这个没有禁用安全功能是指通过将请求头,如:
res.setHeader('Access-Control-Allow-Origin', "http://"+req.headers.host+':8000');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
next();
其实,我不是在JavaScript不太好,自早晨用相同搞乱。任何人都可以帮助我解决这个问题,即如何在片段中合并这些请求标头。
答
你必须使用更新的Chrome启动以下:
-disable-web-security -user-data-dir
您可以在您的服务器端将其添加到响应头:
file://
最简单的方法:(1。 )下载WAMP,LAMP,XAMPP或AMPPS,并将您的项目放在www/htdocs目录中。 (2.)在本地主机上运行它。 (3.)...(4.)利润。 –
谢谢。我做甚至检查JavaScript控制台...的错误和所有..但我需要在脚本中使用这些标头。 – Acid
只要你甚至不使用HTTP,那么试图将_HTTP_标头添加到任何东西是没有意义的。 CORS-enabled头文件当然必须由_server_设置 - 你不能在客户端脚本中设置_makes_请求。 (因为如果可能的话,这将使CORS几乎没用。) – CBroe