如何将请求 headers 作为数组添加到 javascript 中的 window.open post url?

How to add request headers as array to window.open post url in javascript?

我有类似的代码。

url : /files/docuemnttype/zipfile

window.open('POST', url, '_blank',{"reporttype" : [1,2,3,4,5]});

我正尝试在使用 window.open 的 post 调用中将 reporttype 数组作为请求 header 发送。

谁能帮我看看这是怎么回事。

谢谢!!

the question here解决这个问题。你不能在 JavaScript 上使用 'window.open' 函数来做到这一点。

您需要使用 setRequestHeader 函数通过 XMLHttpResponse 对象传递此信息,或者如果您有权访问它,则通过后端服务器处理请求。

您不能使用 window.open 向后端服务执行 POST 请求,您可以使用 fetch 函数

fetch(url, {
  method: "POST",
  body: JSON.stringify({"reporttype" : [1,2,3,4,5]}),
  headers: {"Content-Type": "application/json"}
    .then(response => response.json())
    .then(data => console.log(data));

您也可以尝试使用 XMLHttpRequest

var xhr = new XMLHttpRequest();

xhr.onreadystatechange = function() {
  if (xhr.readyState === 4) {
    console.log(xhr.response);
  }
}

xhr.open("POST", url, true);
xhr.setRequestHeader("Content-type", "application/json");
xhr.send(JSON.stringify({"reporttype" : [1,2,3,4,5]}));