我有一个简单的Python服务器,
import BaseHTTPServer
import SimpleHTTPServer
PORT = 8080
class TestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
def do_GET(self):
self.wfile.write("ok")
def start_server():
"""Start the server."""
server_address = ("", PORT)
server = BaseHTTPServer.HTTPServer(server_address, TestHandler)
server.serve_forever()
if __name__ == "__main__":
start_server()
我希望与Ajax沟通:
$.ajax({
type: "GET",
url: 'http://localhost:8080',
data: dataString,
success: function(data) {
alert(data)
}
});
但是由于跨域问题,URL ='http:// localhost:8080'不适用于Firefox或Chrome。我的代码在Internet Explorer上没问题。
我该如何解决我的pb?我的HTML文件位于本地http://localhost/test/,我的Python服务器位于http://localhost:8080,我希望在同一个域上进行通信。
答案 0 :(得分:0)
你不能只通过另一个URL上的同一个小型Python服务器提供本地文件吗?这将把它们放在同一个域中。
如果您使用Apache来提供HTML页面,您可以代理(see ProxyPass
)您的Python服务器,使其出现在同一个域和同一个端口上,就在不同的URL下。