不是跨域的。XMLHttpRequest无法加载本地主机:端口号1。起源localhost:portNo2是AccessControlAllowOrigin不允许

2024-09-28 01:26:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建了一个服务器BaseHTTPServer.HTTPServer在Python中本地主机:端口号1在

客户端位于本地主机:portNo2和在客户端,我发出jQuery$.ajax POST请求,如下所示:

var request = $.ajax({
        url: "http://localhost:portNo1",
        type: "post",
        dataType: 'json',
        data: json_data
    });

在服务器端,服务器从客户端获取数据并用其数据进行应答。在

^{pr2}$

在客户端有一个错误,那就是客户端的回调失败。我调试并验证了jsonObj没有任何东西。但我看不见里面有什么self.wfile文件对象。在

在JS控制台,我也得到了以下错误(它出现在Google Chrome的JS控制台上,而在Firefox JS控制台中没有出现):

XMLHttpRequest cannot load localhost:portNo1 . Origin localhost:portNo2 is not allowed by Access-Control-Allow-Origin. client.html:1

googlechrome的JS控制台指向html文件,但这对我来说也没有意义。在

我检查了一下网站,似乎错误通常是由于跨域请求造成的。但是,我正在从一个本地主机端口通信到另一个本地主机端口。在


Tags: 文件端口服务器jsonlocalhost客户端datahtml
1条回答
网友
1楼 · 发布于 2024-09-28 01:26:31

好吧,这就是问题所在。跨源限制不允许您在不发送Access-Control-Allow-Origin: *报头的情况下跨端口通信。在

更好的解决方案是使用Nginx或其他web服务器将这两个正在运行的应用程序反向代理到同一个域和端口。在

相关问题 更多 >

    热门问题