gpt4 book ai didi

python - http.client.HTTPConnection 的 close() 函数不起作用?

转载 作者:可可西里 更新时间:2023-11-01 17:02:26 26 4
gpt4 key购买 nike

我使用的 Python 版本是 3.3。假设我无法通过关闭的连接发送 http 请求。但实际上,它在调用 close() 函数后仍然有效。这是我的代码:

conn = http.client.HTTPConnection("192.168.8.186:8081")  
conn.request("GET", "")
response = conn.getresponse()
data = response.read()
data
b"403 Forbidden \nRequest forbidden by administrative rules.\n\n'"
conn.close() #???
conn.request("GET", "")
(conn.getresponse()).read()
b'403 Forbidden\nRequest forbidden by administrative rules.\n\n'

最佳答案

HTTPConnection 的代码看来,request 调用依次调用 send,如果未打开则打开连接:

def send(self, data):
"""Send `data' to the server."""
if self.sock is None:
if self.auto_open:
self.connect()
else:
raise NotConnected()
...

从这段代码看来,将auto_open 标志设置为0(默认为1)似乎可以避免这种行为。在这种情况下,您可能需要自己调用 connect 函数。

然而,这是基于我的 Python 2.7.3 代码。

关于python - http.client.HTTPConnection 的 close() 函数不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20797171/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com