基于postman获取动态数据过程详解


Posted in Javascript onSeptember 08, 2020

1、在 Tests 中处理

返回报文为 json 格式的

  • 示例:因为充值记录接口中需要用到登录接口返回报文中的信息如下
  • 以获取 token(JWT)和 uid 为例
  • 在登录接口的tests中写入代码(因为登录接口报文信息中有返回 JWT 和 uid) 

基于postman获取动态数据过程详解

输入完上图中代码后,点击send请求接口,去全局变量中查看,是否成功获取JWT和uid的值并且设置了全局变量

基于postman获取动态数据过程详解

在充值记录接口中需要用到JWT和uid的地方设置变量{{JWT}}和{{uid}}

基于postman获取动态数据过程详解

请求完成后清除变量

基于postman获取动态数据过程详解

通过批量执行用例的方法执行,且切换账号进行登录请求,进行验证充值记录的动态数据获取是否成功

基于postman获取动态数据过程详解

基于postman获取动态数据过程详解

返回报文为 xml 格式从返回报文中取值设变量

基于postman获取动态数据过程详解

执行完上面接口后在全局变量中已存在变量 provice

基于postman获取动态数据过程详解

依赖接口将变量中的 value 作为参数传入

基于postman获取动态数据过程详解

2、在 Pre-request Script 中处理

首先 postman 提供了一个 "Send a request" 代码段,他是已经封装好的发送请求的方法,这个代码段默认只能发送get请求,且这样直接使用的话无法指定请求头等信息

  • https://postman-echo.com/get 表示要发送的请求
  • function 中的 err 表示请求返回的错误信息,response 表示响应内容
  • console.log() 是 postman 封装的查看日志的方法,可以调出 postman 的 console 控制台来查看代码运行情况,方便调试。想要打印出什么由自己来定义,上面表示打印出 json 格式的响应信息

基于postman获取动态数据过程详解

假如要传一个 POST 请求,且 body 参数为 json 数据

var data = {"userName": "17779828887","passWord": "123456"}

const postRequest = {
 url: "http://localhost:8080/user/login",
 method: 'POST',
 header:"Content-Type: application/json",
 body: {
  mode: 'raw',
  raw: JSON.stringify(data)
 }};

pm.sendRequest(postRequest, function (err, res) {
  console.log(res.json());
  // 讲报文中的字段设为全局变量
  pm.globals.set("uid", res.json().data.user.uid);
  pm.globals.set("token", res.json().data.token);
});

// const 是 js 中用来定义变量的关键字,由 const 定义的变量不可以修改,而且必须初始化
// url 表示要发送的请求 url;
// method 指定请求方法;
// header 定制请求头信息(因为你要传 json 格式的数据的话,需要在这里定义请求头为 Content-Type:application/json,我开始这里没填写,一直提示 json 参数不对。。。)
// body 表示请求 body 中携带的参数
// JSON.stringify() 方法是将一个 JavaScript 值(对象或者数组)转换为一个 JSON 字符串

如果 header 中需要添加多个键值对,则需要按照如下方式

header: [
      "Content-Type: application/json",
      "token: duoceshi"
      ]

假如要传一个 POST 请求,参数类型是 application/x-www-form-urlencode

const form_request = {
  url: "http://192.168.0.221:8181/cms/manage/loginJump.do",
  method: "post",
  header: [
   "Content-Type: application/x-www-form-urlencoded"
   ],
  body:{
    mode: "raw",
    raw: "userAccount=admin&loginPwd=123456"
  }
};

pm.sendRequest(form_request, function (err, response) {
  console.log(response.json());
});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
从JavaScript的函数重名看其初始化方式
Mar 08 Javascript
jQuery select的操作实现代码
May 06 Javascript
实现连缀调用的map方法(prototype)
Aug 05 Javascript
JQERY limittext 插件0.2版(长内容限制显示)
Aug 27 Javascript
验证手机号码的JS方法分享
Sep 10 Javascript
jQuery中detach()方法用法实例
Dec 25 Javascript
如何用jQuery实现ASP.NET GridView折叠伸展效果
Sep 26 Javascript
VUE2实现事件驱动弹窗示例
Oct 21 Javascript
浅谈在vue项目中如何定义全局变量和全局函数
Oct 24 Javascript
vue+webpack dev本地调试全局样式引用失效的解决方案
Nov 12 Javascript
基于vue和websocket的多人在线聊天室
Feb 01 Javascript
比较node.js和Deno
Apr 27 Javascript
解决vue请求接口第一次成功,第二次失败问题
Sep 08 #Javascript
如何区分vue中的v-show 与 v-if
Sep 08 #Javascript
谈谈JavaScript中的函数
Sep 08 #Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
Sep 08 #Javascript
浅析JavaScript 函数柯里化
Sep 08 #Javascript
Vue.js使用axios动态获取response里的data数据操作
Sep 08 #Javascript
JavaScript 事件代理需要注意的地方
Sep 08 #Javascript
You might like
在php中判断一个请求是ajax请求还是普通请求的方法
2011/06/28 PHP
浅析ThinkPHP中的pathinfo模式和URL重写
2014/01/06 PHP
PHP调用VC编写的COM组件实例
2014/03/29 PHP
php实现把url转换迅雷thunder资源下载地址的方法
2014/11/07 PHP
php实现获取文件mime类型的方法
2015/02/11 PHP
利用php实现一周之内自动登录存储机制(cookie、session、localStorage)
2016/10/31 PHP
php pdo连接数据库操作示例
2019/11/18 PHP
cnblogs csdn 代码运行框实现代码
2009/11/02 Javascript
jquery 操作DOM的基本用法分享
2012/04/05 Javascript
jquery+css+ul模拟列表菜单具体实现思路
2013/04/15 Javascript
如何实现移动端浏览器不显示 pc 端的广告
2015/10/15 Javascript
jqGrid表格应用之新增与删除数据附源码下载
2015/12/02 Javascript
深入浅析Node.js 事件循环
2015/12/20 Javascript
AngularJS中的DOM操作用法分析
2016/11/04 Javascript
assert()函数用法总结(推荐)
2017/01/25 Javascript
基于Vue单文件组件详解
2017/09/15 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
2017/11/21 Javascript
VUE v-for循环中每个item节点动态绑定不同函数的实例
2018/09/26 Javascript
详解vue几种主动刷新的方法总结
2019/02/19 Javascript
webpack项目使用eslint建立代码规范实现
2019/05/16 Javascript
Emberjs 通过 axios 下载文件的方法
2019/09/03 Javascript
python检查字符串是否是正确ISBN的方法
2015/07/11 Python
Python爬取网页中的图片(搜狗图片)详解
2017/03/23 Python
python3实现UDP协议的服务器和客户端
2017/06/14 Python
Python 中的参数传递、返回值、浅拷贝、深拷贝
2019/06/25 Python
python3 自动识别usb连接状态,即对usb重连的判断方法
2019/07/03 Python
解决Django中修改js css文件但浏览器无法及时与之改变的问题
2019/08/31 Python
在CentOS7下安装Python3教程解析
2020/07/09 Python
Python经典五人分鱼实例讲解
2021/01/04 Python
完美解决Pycharm中matplotlib画图中文乱码问题
2021/01/11 Python
酒店副总经理岗位职责范本
2014/02/04 职场文书
祖国在我心中演讲稿400字
2014/05/04 职场文书
2014年客房部工作总结
2014/11/22 职场文书
迁徙的鸟观后感
2015/06/09 职场文书
高中军训感想
2015/08/07 职场文书
nodejs利用readline提示输入内容实例代码
2021/07/15 NodeJs