繁体   English   中英

在chrome上获取请求的正文,并在邮递员请求中使用

[英]Fetch the body of a request on chrome and use it on a postman request

我正在尝试获取源自python脚本的请求的JSON回复:

import webbrowser
webbrowser.open(url, new=0, autoraise=True)

...并将其作为Postman请求中的正文发送到其他API。

该脚本有多个迭代。 我能够用它在Chrome中打开50个标签,但是现在我如何将复制粘贴正文过程自动化到Postman。

确实没有一种受支持的方法可以通过不同的流程与Postman应用进行通信以运行请求 (请参见例如https://github.com/postmanlabs/postman-app-support/issues/86 ),但该方法不属于工具。

如果我很好地理解了问题的要点; 基本上,您要实现的目标是连接几个网络请求,在它们之间重用数据。 如我所见,您可以采取两种方法:

对您的python代码执行两个请求:

您不需要打开浏览器来发送HTTP请求的开销; 相反,只需使用一个库(例如urllibrequests )即可。 这是一个例子:

import req
# First request is a GET to "url"
r1 = requests.get(url)
# POST the contents of r1's reply to a different endpoint:
r2 = requests.post("http://url.tld/endpoint", data=r1.json())

从那里,您可以继续在脚本中查询r2来查找详细信息或处理数据。

创建2个不同的Postman请求并按顺序运行

同样,您可以在邮递员中创建两个请求,使用“ 测试”选项卡提取响应的正文,将其保存为环境变量,然后在下一个请求中重复使用。

var body = pm.response.json();
pm.environment.set("body", body);

您可以访问env.var。 使用车把符号-即{{body}}

请注意,如果您出于任何其他原因想要从浏览器中发出请求(例如Cookie),则可以从Chrome devtools的“ 网络”标签中手动将其作为cURL导出,然后将其导入回邮递员,或使用邮递员拦截器捕获浏览器的活动。 这将保留标题/任何其他数据,以备将来使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM