gpt4 book ai didi

javascript - 如何结合ajax和CORS向另一个域发送json请求

转载 作者:行者123 更新时间:2023-11-30 15:44:15 25 4
gpt4 key购买 nike

我一直在尝试从另一个域上托管的网络服务获取信息。最初我只使用 ajax,但后来我意识到出于安全原因这不起作用。后来我了解到我可以使用 CORS 来解决这个问题,问题是我没有让它工作。有什么建议吗?

JavaScript:

$.ajax({
type: "POST",
url: "http://localhost:34887//Login",
data: '{"username":"Administrator","password":""}',
dataType: "json",

success: function(data) {
alert(data[1]);
},
error: function(data){
alert("fail");
}
});

带有 CORS 的 php 代码:

header('Access-Control-Allow-Origin: http://localhost:34887/');
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS');

我得到的错误:

XMLHttpRequest 无法加载 http://localhost:34887/Login .请求的资源上不存在“Access-Control-Allow-Origin” header 。产地' http://localhost:5050 ' 因此不允许访问。响应的 HTTP 状态代码为 500。

这与我在不使用 CORS 时遇到的错误相同。(欢迎使用 CORS 在线示例)

最佳答案

如果您有两台服务器 - 服务器 A(设为 http://localhost:5050)和服务器 B(设为 http://localhost:34887/) 并且您正在尝试从从 Server A 运行到 Server B

的网站运行 ajax
Website on Server A ===AjaxRequest==> Server B

然后 Server B 应使用 Access-Control-Allow-Origin header 响应来自 Server A 上运行的网站的请求其中包含 Server A 的值:

header('Access-Control-Allow-Origin: Server A');

这是:

header('Access-Control-Allow-Origin: http://localhost:5050');

此代码应在 Server B 中运行,以接受来自 Server A 的请求。

关于javascript - 如何结合ajax和CORS向另一个域发送json请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40343412/

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