【问题标题】:How to use 1st API response as a request of 2nd API in Postman?如何在 Postman 中使用第一个 API 响应作为第二个 API 的请求?
【发布时间】:2018-11-02 00:57:27
【问题描述】:

如何在 Postman 中使用第一个 API 响应作为第二个 API 的请求?

请帮助我,无法找到它的解决方案,如果有人使用这个 plz post 解决方案。

谢谢,

【问题讨论】:

  • 如果响应/请求的数据相同,您可以将第一组数据保存在一个变量中,并在第二个请求的正文中使用它。不过需要更多详细信息才能提供帮助。

标签: api selenium testing postman qa


【解决方案1】:

你可以使用两个邮递员,第一个是已经安装的,第二个是chrome扩展邮递员

【讨论】:

  • 您能详细说明一下吗?
  • 请求和响应是同一个API??
  • 您可以在同一个邮递员中使用,但这取决于您的响应速度如何
【解决方案2】:

您有第一个响应正文,因此您可以在测试脚本中使用这样的语法访问它:

var resp = pm.response.text() // resp - is a string representation of response body.
pm.environment.set("YourEnvironmentVariable", resp) //you can put only string value in variable. resp is a string.

您可以在下一个请求正文中使用此变量,例如:

{{YourEnvironmentVariable}}

全部完成!

【讨论】:

  • 有点取决于响应是什么/第二个端点需要是 only 要做的事情才能完成这项工作。需要确定原始问题中的更多详细信息。
  • @DannyDainton 你的意思是我没有写过他需要 f.e. 的案例。第一个响应标头等?
  • 我的意思是,您假设端点接受 plain/text 作为第二个请求中的消息正文,如果它需要 JSON 有效负载等,这将无法正常工作。根据问题中提供的信息很难知道实现是什么。
  • @DannyDainton 不,你错了:imgur.com/ZkqtkxR,在文档中:postmanlabs.com/postman-collection/Response.html#text
  • 您使用的是与 Saurabh 相同的 API 端点和实现?您基本上是根据有限的信息进行猜测——在这种情况和其他所有情况下,我们应该做的是提取更多细节,而不是为潜在问题提供猜测的解决方案。请在以同样的方式回答每个问题之前停下来思考一下。
【解决方案3】:

在第一个请求的“测试”选项卡下添加以下内容:

var 数据 = JSON.parse(responseBody); postman.setGlobalVariable("name", data['name']);

基本上从响应正文中检索“名称”并将其设置为全局变量。

然后使用从第一个 API 的响应中获取的名称值,并将此响应用作第二个 API 中的请求。

感谢..

【讨论】:

  • 所以你只需要第一个请求中的“一些东西”而不是整个响应,就像你的问题似乎说的那样。根据响应的结构,这可能会做同样的事情:pm.globals.set("name", pm.response.json().name)
猜你喜欢
  • 2019-12-14
  • 2020-07-21
  • 2022-01-21
  • 1970-01-01
  • 2021-03-01
  • 2022-07-03
  • 1970-01-01
  • 2019-11-26
  • 1970-01-01
相关资源
最近更新 更多