简单的python服务器,可解析POST标头/消息响应

时间:2018-12-30 17:55:07

标签: python python-3.x sockets http server

我正在尝试创建一个简单的python服务器,该服务器可以解析从智能中心发送的POST响应。它以HTTP POST(带有适当的标头)发送数据,正文以JSON发送。我正在寻找一种剥离标头并解析json正文的方法,但是如果不借助手动解析,我似乎找不到任何合适的方法。

这就是我现在所拥有的。理想情况下,我正在寻找一个用于处理标题/正文本身分离的库。

with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
    s.bind((HOST, PORT))
    s.listen(1)
    conn, addr = s.accept()
    with conn:
        print('Connected by', addr)
        while True:
            data=conn.recv(1024)
            if not data:
                break
            ddata = data.decode('utf-8')
            print("Decoded data: %s\n\n\n" % ddata)

            #This doesn't work because it's trying to decode both the header and body, and the header isn't JSON    
            #parsed_data = json.loads(ddata)
            #print("Parsed data: %s\n\n\" % parsed_data)

这是我得到的数据:

POST / HTTP/1.1
Accept: */* User-Agent: Linux UPnP/1.0 Device HOST:
192.168.0.115:8080 Content-Type: application/json Content-Length: 17

{"@test_value":8}

谢谢!

0 个答案:

没有答案