gpt4 book ai didi

javascript - xhr.getAllResponseHeaders() 只返回一个标题

转载 作者:搜寻专家 更新时间:2023-11-01 00:18:34 25 4
gpt4 key购买 nike

我们有 Node.js 作为服务器,它帮助我们从客户端 html 获取远程休息服务,我正在尝试使用以下代码从 jQuery Ajax 调用中获取响应 header :

$.ajax({
type: "get",
url: newUrl,
crossDomain: true,
cache: false,
dataType: "json",
contentType: "application/json; charset=UTF-8",
success: function(data, textStatus, xhr) {
var responseText = JSON.stringify(data);
alert(xhr.getAllResponseHeaders());
},
error: function (xhr, textStatus, errorThrown) {
console.log(errorThrown);
}
});

但问题是,我只得到一个响应头:Content-Type: application/json 剩下的东西被忽略了。根据我的研究,我发现我需要添加 Access-Control-Allow-Headers 才能使其可用。所以在 Node 中我这样尝试:

res.writeHead(200, {
'Content-Type': 'application/json',
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE',
'Access-Control-Allow-Headers': 'Content-Type, Access-Control-Allow-Origin'
});

但我仍然只得到一个 header Content-Type。你能帮助确定这个问题吗?对了,是跨域调用。

最佳答案

最后我能够从 Node.js 端解决这个问题。我都加了

Access-Control-Expose-Headers and Access-Control-Allow-Headers

到 node.js 中的响应头。这解决了我的问题。早些时候我只有 Access-Control-Allow-Headers

关于javascript - xhr.getAllResponseHeaders() 只返回一个标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20674374/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com