Firefox上的Python服务器和Ajax问题

时间:2011-02-07 14:55:44

标签: python ajax

我有一个简单的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,我希望在同一个域上进行通信。

1 个答案:

答案 0 :(得分:0)

你不能只通过另一个URL上的同一个小型Python服务器提供本地文件吗?这将把它们放在同一个域中。

如果您使用Apache来提供HTML页面,您可以代理(see ProxyPass)您的Python服务器,使其出现在同一个域和同一个端口上,就在不同的URL下。