看来服务器正在尽早终止连接而没有发送完整的响应。我已经浏览了文档,并且我认为这是问题所在(添加了重点):
send_response(code, message=None)
将响应标头添加到标头缓冲区,并记录接受的请求。HTTP响应行被写入内部缓冲区,后跟Server和Date标头。这两个标头的值分别从version_string()和date_time_string()方法中选取。如果服务器不打算使用send_header()方法发送任何其他标头,则send_response()之后应调用end_headers()。
因此,您可能只需要将呼叫添加到end_headers
。如果您正在阅读一个旧示例(Python 3.3之前的版本),则不需要这样做。