使用自定义代理

代理服务器充当您的内部网络和 Internet 之间的安全屏障,阻止 Internet 上的其他人访问您内部网络上的信息。

代理定义

在基本的网络语言中,客户端向服务器发出请求,服务器发回响应。

标准请求流

代理服务器是一个应用程序或系统,它充当您的计算机和互联网之间的中介,或者更具体地说,是客户端和服务器之间的中介。代理代表您向网站、服务器和其他互联网服务发出请求。

标准网络代理流程

代理可以驻留在您的本地计算机上、网络中的某个位置,或者位于您的客户端和 Internet 上的目标服务器之间的任何位置。

类似于父母可能通过孩子相互交谈的方式,孩子是中继两个父母之间所有通信的代理。

家长 1问你父亲放学后能不能来接你。

提米放学后你能来接我吗?

家长 2是的。

蒂米爸爸说是的。

在这个类比中,孩子代表每个父母转发信息。除了传递信息之外,代理还可以做更多的事情

  • 记录您的机器和互联网之间的所有流量
  • 显示所有请求、响应、cookie 和标头的内容
  • 将流量路由到指定的 Internet 位置
  • 调试
  • 免受直接攻击的安全
  • DevOps 负载均衡

代理充当执行各种功能的中间人。Postman 具有用于捕获 API 请求的内置 Web 代理、用于拦截网络流量的Postman Interceptor以及用于引导 API 请求的代理设置。

配置代理设置

本文介绍如何在 Postman 中配置代理设置,以引导 Postman 中发出的所有请求通过代理服务器进行路由。这与使用内置代理捕获网络流量不同,后者使 Postman 能够拦截网络流量。

Postman 适用于 Mac、Windows 和 Linux 的本机应用程序支持配置代理。您可以指定使用自定义代理或使用操作系统中定义的系统代理

如果您的所有应用程序都需要使用相同的代理,请使用自定义代理。如果您想引导来自 Postman 的请求通过自定义代理服务器,请打开自定义代理 将其关闭将指示请求不使用代理服务器。

要配置代理设置,请选择标题工具栏右侧的齿轮图标,选择设置,然后选择代理选项卡。

代理设置模式

使用自定义代理

Postman 使您能够配置自定义代理配置,指导 Postman 通过代理服务器转发您的 HTTP 或 HTTPS 请求。这将通过您选择的代理服务器路由 Postman 发送的所有请求。

  1. Postman 是通过所选代理发送请求的客户端。
  2. 代理服务器将请求发送到服务器。
  3. 服务器通过代理服务器返回响应。

启用自定义代理

自定义代理设置默认关闭,可以使用切换开关打开。

通过选中Proxy Type旁边的相应复选框来选择代理服务器的类型。默认情况下,两者HTTPHTTPS被选中。这意味着 HTTP 和 HTTPS 请求都将通过代理服务器。

代理类型下的第一个字段是代理服务器。在此处输入代理服务器的主机IP 地址(无协议)。代理服务器的下一个字段是提供代理服务器端口的位置。

Proxy Server下面的字段是Proxy Auth。Postman 默认使用系统的代理配置。要发送 API 请求,请选择此代理需要身份验证选项。启用此选项会使请求使用基本身份验证方法,该方法需要用户名和密码。

默认代理身份验证

代理绕过设置位于代理服务器选项下方。此处可以提供许多逗号分隔的主机,这些主机的请求不使用代理设置。

自定义代理配置

使用系统代理

使用系统代理选项使 Postman 可以使用系统的默认代理配置。它包含一个使用HTTP_PROXYHTTPS_PROXYNO_PROXY环境变量的选项。

如果您的所有应用程序都需要使用相同的代理,您可能需要使用在操作系统级别配置的默认代理。使用系统代理设置通过操作系统的默认配置在 Postman 中转发 HTTP 或 HTTPS 请求。换句话说,您告诉 Postman 和使用 Postman 发送的所有请求都遵循您的操作系统的默认配置。

  1. Postman 是通过操作系统的默认配置发送请求的客户端,它将请求转发到代理服务器。
  2. 系统代理服务器将请求发送到服务器。
  3. 服务器通过代理服务器返回响应。

系统代理

默认情况下启用系统代理设置。通过 Postman 发出的任何请求都将通过系统代理。

您可以选择“使用系统代理”选项来打开或关闭系统代理。如果未选中,则直接发出所有请求。但是,无论应用程序中的代理设置如何,如果设置了环境变量,Postman 仍然会使用系统代理。

使用系统代理

注意:如果使用系统代理自定义代理配置都打开了,那么自定义代理配置将优先。

代理配置故障排除

如果您无法通过 Postman 发送任何请求并且您的网络需要代理,请执行以下步骤:

  • 启用系统代理并确保将代理添加到操作系统:
    • Windows:选择开始,然后选择最左侧的齿轮图标(设置)。在“设置”中,选择“网络和 Internet”。在左侧窗格中,选择底部的代理。选择手动代理设置> 使用代理(ON)

    • Mac:打开系统偏好设置并选择网络。在左侧,确保选择已连接或活动的网络连接。您可以为每种类型的网络连接设置不同的代理设置。在底部,选择Advanced。选择代理选项卡,您将看到可以配置的不同协议。如果您选择Web 代理 (HTTP),您将能够输入代理服务器 IP 地址、端口号、用户名和密码。

    • Linux:在系统设置中,向下滚动到硬件,选择网络,然后选择网络代理。您可以选择自动手动

如果您无法通过 Postman 发送任何请求并且您的网络不需要代理,请执行以下步骤:

  • 确保您已停用两个代理(自定义/系统)。如果您仍然无法发送请求,可能是由于系统中设置了环境变量。有两种解决方案可以解决这个问题:

    • 删除环境变量http_proxyhttps_proxyHTTP_PROXYHTTPS_PROXY

    • 在关闭这些“变量”的情况下启动 Postman:

      • Windows:创建一个postman.bat包含以下内容的文件:
      set HTTP_PROXY=''
      set HTTPS_PROXY=''
      set http_proxy=''
      set https_proxy=''
      start C:\path\to\Postman.exe

      双击此.bat文件会打开没有设置任何代理环境变量的 Postman。

      • Mac/Linux – http_proxy= '' https_proxy= '' HTTP_PROXY= '' HTTPS_PROXY= '' /path/to/postman

如果您的代理具有基本身份验证,请执行以下步骤:

  • 使用适当的环境变量启动 Postman:

    • Windows:创建一个postman.bat包含以下内容的文件:
    set HTTP_PROXY=http://USER:PASS@host:port
    set HTTPS_PROXY=https://USER:PASS@host:port
    start C:\path\to\Postman.exe

    双击这个.bat文件应该会打开没有设置任何代理环境变量的 Postman。

    • Mac/Linux:创建.sh包含以下内容的文件:
    HTTP_PROXY=http://USER:PASS@host:port
    HTTPS_PROXY=https://USER:PASS@host:port /path/to/postman
    • 创建此文件并将其保存在方便的位置。打开此文件时,设置的环境变量将仅适用于 Postman 进程。

有关配置或请求问题的故障排除,请参阅使用控制台进行故障排除