Skip to content

环境变量

HTTPX 库可以通过环境变量进行配置。默认情况下会使用环境变量。若要忽略环境变量,必须将 trust_env 设为 False。有两种方式可以设置 trust_env 来禁用环境变量:

  • 在客户端通过 httpx.Client(trust_env=False) 设置
  • 使用顶层 API,例如 httpx.get("<url>", trust_env=False)

以下是 HTTPX 识别的环境变量及其功能列表:

代理设置

下面记录的环境变量是各种 HTTP 工具(包括以下工具)的通用约定:

有关在 HTTPX 中使用代理的更多信息,请参阅 HTTP 代理

HTTP_PROXY, HTTPS_PROXY, ALL_PROXY

有效值:代理服务器的 URL

HTTP_PROXYHTTPS_PROXYALL_PROXY 分别设置用于 httphttps 或所有请求的代理。

export HTTP_PROXY=http://my-external-proxy.com:1234


# 此请求将通过代理发送
python -c "import httpx; httpx.get('http://example.com')"


# 此请求将直接发送,因为我们设置了 `trust_env=False`
python -c "import httpx; httpx.get('http://example.com', trust_env=False)"

NO_PROXY

有效值:以逗号分隔的主机名/URL 列表

NO_PROXY 可禁用对特定 URL 的代理

export HTTP_PROXY=http://my-external-proxy.com:1234
export NO_PROXY=http://127.0.0.1,python-httpx.org


# 与前面的示例一样,此请求将通过代理发送
python -c "import httpx; httpx.get('http://example.com')"


# 这些请求将直接发送,绕过代理
python -c "import httpx; httpx.get('http://127.0.0.1:5000/my-api')"
python -c "import httpx; httpx.get('https://www.python-httpx.org')"