是否可以在多个段中发送一个普通的、单一的http post请求(不是块编码的)?我正在考虑使用httplib.HTTPConnection
并多次调用send
方法(并在每次read
之后对响应对象调用send
)。
(上下文:我正在合作设计一个服务器,它提供类似于事务的服务[一系列相互关联的请求-响应]。我正在寻找最简单、最兼容的http表示。)
最佳答案
在被朋友们确信这是可能的之后,我找到了一种方法。我覆盖httplib.HTTPResponse
(n.b.httplib.HTTPConnection
很好,可以让您指定它将实例化的response_class
)。
查看socket.py和httplib.py(特别是_fileobject.read()
),我注意到read()
只允许两个东西:
读取确切的字节数(即使连接未关闭,也会立即返回)
读取所有字节,直到连接关闭
我可以扩展这种行为,只需几行代码就可以实现免费流媒体。我还必须将httpresponse的will_close
成员设置为0。
我仍然想知道这是否被认为是可以接受的或滥用http。
关于python - 在httplib.HTTPConnection上多次发送,在HTTPResponse上多次读取?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5093622/