我有一个使用requests
包发布到服务器的应用程序。在我的测试环境中,我想建立一个简单的服务器,以便我可以验证客户端的请求。但是,当我打电话时requests.post
,它只是挂起。直到客户端最终超时并且连接关闭后,服务器才响应。具有讽刺意味的是,服务器随后发送 200 OK。
这是我的服务器 MRE:
import http.server
class TestHandler(http.server.BaseHTTPRequestHandler):
def do_POST(self):
print('Received:', self.rfile.read())
self.send_response(200)
self.end_headers()
if __name__ == '__main__':
http.server.HTTPServer(('127.0.0.1', 8080), TestHandler).serve_forever()
这是我给客户的 MRE:
import requests
if __name__ == '__main__':
print(requests.post('http://127.0.0.1:8080/hello', data='Testing', timeout=5))