python http server handle json

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python http server handle json相关的知识,希望对你有一定的参考价值。

用Python实现一个http server

# python2
# coding = utf-8

from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler
import json

class RequestHandler(BaseHTTPRequestHandler):
    def _set_headers(self):
        self.send_response(200)
        self.send_header(Content-type, application/json)
        self.end_headers()

    def do_GET(self):
        response = {
            status:SUCCESS,
            data:hello from server
        }

        self._set_headers()
        self.wfile.write(json.dumps(response))

    def do_POST(self):
        content_length = int(self.headers[Content-Length])
        post_data = self.rfile.read(content_length)
        print post data from client:
        print post_data

        response = {
            status:SUCCESS,
            data:server got your post data
        }
        self._set_headers()
        self.wfile.write(json.dumps(response))

def run():
    port = 80
    print(Listening on localhost:%s % port)
    server = HTTPServer((‘‘, port), RequestHandler)
    server.serve_forever()

run()

 

python post json

# python2
# coding = utf-8

import json
import urllib2

data = {
    key1:value1,
    key2:value2
}

req = urllib2.Request(http://server_ip:server_port)
req.add_header(Content-Type, application/json)

response = urllib2.urlopen(req, json.dumps(data))

print(response.read())

 

以上是关于python http server handle json的主要内容,如果未能解决你的问题,请参考以下文章

python初步学习中的问题之HTTP status code is not handled or not allowed

从 Mod:handle_cast 调用 gen_server:cast

python 在Heroku上关闭django的中间件。见http://stackoverflow.com/questions/30969597/how-do-i-handle-dyno-restar

golang http_file_server

Error from server (ServiceUnavailable): the server is currently unable to handle the request

python爬虫_urllib2:handle处理器和自定义opener