You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在调用POST前用Python Requests库预先建立REST连接?

如何提前建立requests连接以减少POST请求耗时?

我希望使用Python的requests库先建立REST连接,再基于该已建立的连接单独发起POST请求。

最初我采用如下代码:

import requests

session = requests.Session()
# 从此处开始计时
response = session.post("full url", headers={"header" : "header value"})
# 响应包含时间戳

但我很快意识到,由于Session()不接收URL,连接肯定是由post()创建的。我了解到,当连接已建立时,到接收端的网络延迟约为95ms,但上述请求耗时约200ms。

为了在调用post()前创建连接,我参考相关方案后写出第二次尝试的代码:

import requests
import time
import urllib.request
from requests import Session
from urllib.parse import urljoin

class LiveServerSession(Session):
    def __init__(self, base_url=None):
        super().__init__()
        self.base_url = base_url

    def request(self, method, url, *args, **kwargs):
        joined_url = urljoin(self.base_url, url)
        return super().request(method, joined_url, *args, **kwargs)

if __name__ == "__main__":
    
    baseUrl = "https://api.domain.com"
    with LiveServerSession(baseUrl) as session:
        # 此时连接应该已建立?
        # 从此处开始计时
        response = session.post(baseUrl + "my sub url", headers={"header" : "header value"})

然而,该请求仍耗时约196ms。我是否使用方式有误?我只想在调用post()前就建立好连接。


内容的提问来源于stack exchange,提问作者intrigued_66

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 21:15:30