Javascript Python服务器不接受jquery ajax发送的JSON

Javascript Python服务器不接受jquery ajax发送的JSON,javascript,python,http,jquery,cgi,Javascript,Python,Http,Jquery,Cgi,我想使用JSON来管理客户机/服务器之间的数据。然而,除了JSON,一切都正常。。。 我认为它来自我的python服务器,但我不是服务器编程方面的专家,所以我真的不知道如何在我的python服务器中进行更改。我的python服务器非常简单,因为我真的不知道如何在里面编程。 如果我不使用JSON,它可以很好地工作,但是对数据进行排序并不是很有效。 有没有一种简单的方法来修改我的python服务器以接受json(如果它来自python服务器) 这是我的html: <form method="p

我想使用JSON来管理客户机/服务器之间的数据。然而,除了JSON,一切都正常。。。 我认为它来自我的python服务器,但我不是服务器编程方面的专家,所以我真的不知道如何在我的python服务器中进行更改。我的python服务器非常简单,因为我真的不知道如何在里面编程。 如果我不使用JSON,它可以很好地工作,但是对数据进行排序并不是很有效。 有没有一种简单的方法来修改我的python服务器以接受json(如果它来自python服务器)

这是我的html:

<form method="post" id="formu" >
        <textarea class="field span10" id="sequence" name="sequence" cols="4" rows="5"></textarea>
        <input type="submit" value="Submit" class="btn btn-primary">
</form>
我的ajax python代码(test.py):

和我的python服务器:

#!/usr/bin/python

import BaseHTTPServer
import CGIHTTPServer
import cgitb; cgitb.enable() 
import mimetypes

mimetypes.add_type("image/svg+xml", ".svg", True)
mimetypes.add_type("image/svg+xml", ".svgz", True)
mimetypes.add_type("application/javascript", ".js", True)
mimetypes.add_type("text/javascript", ".js", True)
mimetypes.add_type("text/plain", ".txt", True)
mimetypes.add_type("text/html", ".html", True)
mimetypes.add_type("application/perl", ".pl", True)
mimetypes.add_type("application/json", ".json", True)




server = BaseHTTPServer.HTTPServer
handler = CGIHTTPServer.CGIHTTPRequestHandler
server_address = ("127.0.0.1", 8080)
#handler.cgi_directories = ['/FOLDOMEweb']
handler.cgi_directories = ['/WEBSERVER'] 
httpd = server(server_address, handler)

try:    
    print "Running HTTP server"
    httpd.serve_forever()
except KeyboardInterrupt:
    print "Server Stoped"
不要使用

data    : JSON.stringify({'sequence' : sequence})

并将该对象传递给jQueryAjax调用。它将自己处理格式化。请记住,表单值由名称、值对组成,所以让jQuery为您做到这一点。

您将CGI和一个长期运行的守护进程web服务器混合在一起。您打算如何运行您的web服务器?我只是在shell上运行带有“pythonmyserver.py”的python服务器,它除了JSON之外还能工作。在我可以在localhost中打开…/mypage.py之后,您还没有描述“不工作”的含义。出了什么问题,在哪里,在什么情况下,以及您希望在那里发生什么?当我提交时,我在test.py中没有收到数据。在任何情况下,都没有崩溃,只是什么都没有发生。如果我在ajax中删除JSON,并在test.py simple中使用form=cgi.FieldStorage()和form.getvalue('sequence')获取数据,ajax工作得非常好!但是我更喜欢使用JSON,我确信它来自我的python服务器,它不接受JSON,但我不知道如何告诉它接受它…但是如果我想给出其他参数,比如{'sequence':sequence,'secondarg':“mysecondarg”}怎么办?如果我拆下这条线,它仍然不起作用。Json不起作用。如果我不使用Json,它会工作为什么?用您需要的任何属性定义对象-然后将其传递到
data
参数中
#!/usr/bin/python

import BaseHTTPServer
import CGIHTTPServer
import cgitb; cgitb.enable() 
import mimetypes

mimetypes.add_type("image/svg+xml", ".svg", True)
mimetypes.add_type("image/svg+xml", ".svgz", True)
mimetypes.add_type("application/javascript", ".js", True)
mimetypes.add_type("text/javascript", ".js", True)
mimetypes.add_type("text/plain", ".txt", True)
mimetypes.add_type("text/html", ".html", True)
mimetypes.add_type("application/perl", ".pl", True)
mimetypes.add_type("application/json", ".json", True)




server = BaseHTTPServer.HTTPServer
handler = CGIHTTPServer.CGIHTTPRequestHandler
server_address = ("127.0.0.1", 8080)
#handler.cgi_directories = ['/FOLDOMEweb']
handler.cgi_directories = ['/WEBSERVER'] 
httpd = server(server_address, handler)

try:    
    print "Running HTTP server"
    httpd.serve_forever()
except KeyboardInterrupt:
    print "Server Stoped"
data    : JSON.stringify({'sequence' : sequence})