在JavaScript上添加请求标头

时间:2016-04-27 17:45:37

标签: javascript html cors csrf

我正在准备一个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>

所以,这段剪辑没有“access-control-allow-origin”,我在本地运行,因此我通过禁用chrome的安全功能使用了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方面并不是很好,并且在使用它时也是如此。任何人都可以帮我解决这个问题,即如何在代码段中合并这些请求标题。

1 个答案:

答案 0 :(得分:0)

您必须使用以下内容更新Chrome的启动:

-disable-web-security -user-data-dir

您可以将其添加到服务器端的响应标头中:

file://