设置模拟服务器(Mock Servers)
Postman 使你能够创建模拟服务器以协助 API 开发和测试。模拟服务器通过接受请求和返回响应来模拟真实 API 服务器的行为。通过将模拟服务器添加到你的 集合 并向你的请求添加 示例 ,你可以模拟真实 API 的行为。
当你向模拟服务器发送请求时,Postman 会将请求与你集合中保存的示例进行匹配。Postman 然后用你添加到示例中的数据进行响应。要查看工作空间中现有的模拟服务器,请在边栏中选择模拟服务器。
你需要登录到 Postman 帐户才能创建模拟服务器。
模拟服务器快速入门
要使用模拟服务器进行测试,请执行以下操作:
- 在 Postman 中,向任何 API 发送请求。你的请求必须保存到一个集合中。
- 在响应窗格中,选择保存响应 > 另存为示例。Postman 会自动使用你发送请求时收到的响应填充示例。
- 在边栏中选择收藏集。 选择保存请求的集合旁边的更多操作图标 ,然后选择模拟集合。
- 为你的模拟命名并保留其他设置为默认值。选择创建模拟服务器。
- 复制模拟 URL 并返回你的请求。将 URL 的基本部分替换为模拟服务器 URL(路径之前的所有内容,例如直到
/customers
)。 - 选择发送。Postman 返回你为请求保存的示例响应,这次来自模拟服务器。
- 打开示例并更改响应,然后保存示例并再次发送请求。Postman 返回你编辑的模拟响应。
创建模拟服务器
你可以从现有集合创建模拟服务器,或者 Postman 将为你的模拟服务器创建一个新集合。 你可以从头开始 、 从集合中 或 从你的历史中 创建一个新的模拟。
从头开始创建模拟
在边栏中选择Mock Servers ,然后选择**+**。
选择现有集合,或创建新集合并添加初始请求。
配置你的 模拟服务器详细信息 。
从集合创建模拟
在边栏中选择收藏集。 选择要模拟的集合旁边的更多操作图标 ,然后选择Mock collection。
配置你的 模拟服务器详细信息 。
从历史中创建模拟
你可以根据 Postman 历史记录中的请求构建模拟服务器。在边栏中选择历史记录,然后选择 请求旁边的更多操作图标 并选择模拟请求。(你也可以模拟特定日期的所有请求。)
配置你的 模拟服务器详细信息 。
配置模拟服务器详细信息
要配置新的模拟服务器,请为其命名。你可以选择一个可选环境让你的模拟服务器使用环境变量。你还可以在模拟服务器发送响应之前配置延迟以模拟网络延迟。
你可以将模拟 URL 保存到新环境中的 环境变量中。 然后,你可以在发送请求之前通过激活新环境来引用请求中的变量。了解有关 将变量用于模拟服务器的 更多信息。
如果你选择将模拟服务器设为私有,则需要在向模拟服务器发送请求时在请求 header 中添加一个 Postman API 密钥 x-api-key:<Your-Postman-API-key>
: 。如果你 共享集合 ,其他人可以使用他们的 Postman API 密钥来调用模拟服务器。
并非所有配置选项都可用,具体取决于你用于创建模拟服务器的方法。
选择完配置选项后,选择Create Mock Server。Postman 显示使用模拟服务器所需的详细信息。(你可以随时通过在边栏中选择模拟服务器并选择模拟服务器来获取这些详细信息。)
选择复制模拟 URL开始向你的模拟服务器发出请求。
要删除模拟服务器,请在边栏中选择模拟服务器。 选择模拟服务器名称旁边的更多操作图标 ,然后选择删除。
编辑模拟服务器配置
你可以随时更改模拟服务器的配置。在边栏中 选择模拟服务器,选择一个模拟服务器,然后选择 编辑配置。
你可以更改模拟服务器的名称、环境、网络延迟和隐私设置。你还可以 指定响应匹配选项 。完成更改配置设置后,选择Update Mock Server。
你不能更改模拟服务器的集合。如果你需要模拟不同的集合, 请创建一个新的模拟服务器 。
匹配请求正文和 header
当你向模拟服务器发送请求时,Postman 使用 匹配算法 来决定在响应中返回哪个示例。
默认情况下,匹配算法在选择最佳返回响应时不考虑请求的正文或 header。你可以在模拟服务器的配置中更改此行为。使用正文或 header 匹配,你可以通过匹配已保存示例的正文或 header 来指定你希望模拟服务器返回的确切响应。
要使用与模拟服务器匹配的正文或 header,请执行以下操作:
在边栏中 选择模拟服务器,选择一个模拟服务器,然后选择 编辑配置。
在Response Matching下,选择你要使用的匹配选项:
- 请求正文- 模拟服务器会将请求的正文与已保存示例的正文进行匹配。
- header- 模拟服务器会将请求的 header 与已保存示例的 header 相匹配。在框中,添加你希望模拟服务器匹配的 header 键,使用逗号分隔键。header 匹配不区分大小写。
选择更新模拟服务器。
向模拟服务器发出请求
使用模拟服务器的 URL 来调用模拟服务器。在边栏中选择Mock Servers ,选择一个模拟服务器,然后选择**Copy Mock URL**。
确保你要模拟的请求至少有一个已保存的示例。你可以发送请求并将响应保存为示例。你还可以定义自定义示例。了解有关 向请求添加示例的 更多信息。
打开一个新的请求选项卡(或在现有选项卡中编辑地址)并添加模拟 URL:
https://<mock-id>.mock.pstmn.io/<request-path>
例如:
https://4bb57fc2-219e-421e-86b4-4ffda6bf1b3b.mock.pstmn.io/matches
模拟 URL 包括模拟服务器的 ID 和你要模拟的请求的路径。选择发送以将请求发送到模拟服务器。
当你向模拟服务器发送请求时,模拟服务器会基于具有相同路径和方法的示例发回响应。 你可以提供多个示例,Postman 将返回 最符合你要求的 一个。
如果你为模拟服务器配置了延迟,Postman 会在发送响应之前等待指定的时间段。
你的 Postman 帐户每月为你提供有限次数的免费模拟服务器调用。检查你的 使用限制 。
使用 HTTP 访问控制模拟
除了使用 Postman 向模拟端点发出请求外,你还可以在 Web 浏览器中发出这些请求。
当 Web 浏览器从与其自身不同的域、协议或端口请求资源时,它会发出跨源 HTTP 请求。 跨源资源共享 (CORS) 是一种标准,它定义了浏览器和服务器可以安全交互的方式。在这种情况下,CORS 指的是 Web 浏览器如何与托管在 Postman 模拟服务器上的模拟端点进行交互。
为 Postman 模拟服务器启用了 CORS,因此你可以使用模拟端点用模拟数据存根你的 Web 应用程序。然后,开发或生产 Web 应用程序可以向你的 Postman 模拟端点发出请求并接收示例响应。
查看模拟呼叫
你可以使用模拟呼叫日志查看和搜索对模拟服务器的呼叫的详细信息。要查看通话记录,请在边栏中选择Mock Servers ,然后选择一个模拟服务器。
调用日志显示对模拟服务器 URL 进行的调用列表。每个条目都显示请求发送的时间、请求方法和路径以及响应概述。选择一个条目以获取有关请求 header 和正文或响应 header 和正文的更多详细信息。
你可以使用搜索框查找特定呼叫。选择刷新图标 以查看最近的请求。
模拟呼叫故障排除
你可以使用模拟调用日志来解决你对模拟服务器的请求。
如果No matching requests
显示在Response列中,这可能意味着你的模拟服务器配置存在问题。确保在你正在模拟的集合中 为请求保存了一个示例。
在服务中断的情况下,你将收到502
、503
或504
响应。检查 Postman 状态页面 以获取更新。
下一步
要了解有关模拟服务器的更多信息,请参阅以下资源: