httplib.HTTPConnection超时:连接与其他阻塞调用

2024-04-25 16:40:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用python的HTTPConnection来进行一些长时间运行的远程过程调用(大约30秒)

httplib.HTTPConnection(..., timeout=45)

解决这个问题。然而,这意味着失败的连接尝试将导致痛苦的漫长等待。我可以独立控制套接字的读取和连接超时——在使用HTTPConnection时可以这样做吗?在


Tags: 远程过程timeouthttplibhttpconnection漫长
1条回答
网友
1楼 · 发布于 2024-04-25 16:40:38

我知道您不是在等待发送请求,但如果您先处理连接失败,则不必等待,即在第一个请求中不要包含timeout参数,如下所示:

    httplib.HTTPSConnection ('url' )
    headers ={'Connection' : 'Keep-Alive'}
    conn.request("request blank", headers) #dummy request to open a conn and keep it alive
    dummy_response = conn.getresponse()
    if dummmy_response == 200 or dummy_response == 201: #if ok, do work with conn
       conn.request("request real", timeout = 25)
    else: 
       reconnect.  #restart the dummy request

只是一个建议,你可以随时提出问题或让它再回答一次。在

相关问题 更多 >