現在、私はPythonソケットのhttpサーバーを作成しています。私はGETとPOSTリクエストを処理しています。 GETの実装はうまくいきましたが、POSTリクエストのbody要素は表示されません。 コードスニペット:http POSTメッセージの本文が受信されていません
self.host = ''
self.port = 8080
self.listener = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.listener.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
self.listener.bind((self.host, self.port))
self.listener.listen(1)
while True:
client_connection, client_address = self.listener.accept()
request = client_connection.recv(2048)
print request
このコードは、WebページからのPOSTリクエストの処理後にHTTPヘッダを得られます。
POST /test.txt HTTP/1.1
Host: localhost:8080
Content-Type: application/x-www-form-urlencoded
Origin: http://localhost:8080
Content-Length: 21
Connection: keep-alive
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/601.6.17 (KHTML, like Gecko) Version/9.1.1 Safari/601.6.17
Referer: http://localhost:8080/
Accept-Language: nb-no
Accept-Encoding: gzip, deflate
をしかしそこには体がないので、問題は、なぜ私は、HTTPを受信していませんさ私はそれが送信されていることを知っていますか?
ありがとうございます!
質問は次のとおりです。POSTが最初に作成されたCLIENTコードが表示されないのはなぜですか? –
こんにちは@MarcBプロジェクトはクラス割り当て用であり、クライアント側は既に実装されています。私は、GETとPOSTリクエストを処理するためにサーバー側を実装するだけです。だから私はエラーを持っているサーバー側を仮定することです – mmoe
どのようなエラーが?サーバーは受け取ったものを吐き出すだけです。投稿体を受け取っていない場合は、クライアントが実際に正しく動作しているかどうかを確認する必要があります。 –