我正在尝试将数据作为JSON对象从python HTTP服务器发送到客户端。 这是我用来获取客户端请求的do_POST函数:
def do_POST(self):
if None != re.search('/compile/*', self.path):
ctype, pdict = cgi.parse_header(self.headers.getheader('content-type'))
print "ctype = %s", ctype
if ctype == 'application/json':
length = int(self.headers.getheader('content-length'))
data = json.loads(self.rfile.read(length))
response = doEverything(data["userId"], data["files"])
##response = json.dump(response, self.wfile)
response = json.dumps(response)
self.send_response(0)
self.end_headers()
self.wfile.write(str(response))
print 'everything ok'
else:
data = {}
self.send_response(200)
self.end_headers()
print 'not application/json'
else:
self.send_response(403)
self.send_header('Content-Type', 'application/json')
self.end_headers()
print 'not /compile/*'
return
我必须做错事,因为客户永远不会得到任何回应。 (是的,输出打印“一切正常”)。 我用self.wfile.write(str(response))替换了self.wfile.write(response)来测试,两者都不起作用。
感谢您的帮助,请不要犹豫,询问您是否需要更多代码