基于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 相关文章推荐
js加解密 脚本解密
Feb 22 Javascript
浅谈javascript的数据类型检测
Jul 10 Javascript
Underscore源码分析
Dec 30 Javascript
JavaScript图像延迟加载库Echo.js
Apr 05 Javascript
JQuery遍历元素的父辈和祖先的方法
Sep 18 Javascript
Angular实现跨域(搜索框的下拉列表)
Feb 16 Javascript
jquery版轮播图效果和extend扩展
Jul 18 jQuery
Vue Transition实现类原生组件跳转过渡动画的示例
Aug 19 Javascript
vue微信分享到朋友圈 vue微信发送给好友
Nov 28 Javascript
JavaScript中Dom操作实例详解
Jul 08 Javascript
javascript 构建模块化开发过程解析
Sep 11 Javascript
Vue Router的手写实现方法实现
Mar 02 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
雄兵连三大错觉:凯莎没了,凉冰阵亡了,华烨觉得自己又行了
2020/04/09 国漫
不用mod_rewrite直接用php实现伪静态化页面代码
2008/10/04 PHP
PHP 正则表达式常用函数
2014/08/17 PHP
ThinkPHP框架使用redirect实现页面重定向的方法实例分析
2018/04/12 PHP
jQuery 页面 Mask实现代码
2010/01/09 Javascript
jQuery 点击图片跳转上一张或下一张功能的实现代码
2010/03/12 Javascript
javascript 全等号运算符使用说明
2010/05/31 Javascript
javascript与CSS复习(《精通javascript》)
2010/06/29 Javascript
JavaScript动态修改弹出窗口大小的方法
2015/04/06 Javascript
JavaScript中Number.MIN_VALUE属性的使用示例
2015/06/04 Javascript
jQuery复制表单元素附源码分享效果演示
2015/09/30 Javascript
Javascript Event(事件)的传播与冒泡
2017/01/23 Javascript
详解Vue.js 2.0 如何使用axios
2017/04/21 Javascript
Vuejs中使用markdown服务器端渲染的示例
2017/11/22 Javascript
JS中DOM元素的attribute与property属性示例详解
2018/09/04 Javascript
JavaScript进阶(一)变量声明提升实例分析
2020/05/09 Javascript
[48:21]林俊杰圣堂刺客超神杀戮秀
2014/10/29 DOTA
Python中使用glob和rmtree删除目录子目录及所有文件的例子
2014/11/21 Python
深入理解Python3中的http.client模块
2017/03/29 Python
Python序列化基础知识(json/pickle)
2017/10/19 Python
pandas groupby 分组取每组的前几行记录方法
2018/04/20 Python
python中的句柄操作的方法示例
2019/06/20 Python
tensorflow查看ckpt各节点名称实例
2020/01/21 Python
python的help函数如何使用
2020/06/11 Python
Python hashlib模块的使用示例
2020/10/09 Python
Python类的继承super相关原理解析
2020/10/22 Python
python 如何停止一个死循环的线程
2020/11/24 Python
python使用dlib进行人脸检测和关键点的示例
2020/12/05 Python
Html5 页面适配iPhoneX(就是那么简单)
2019/09/05 HTML / CSS
印度最大的网上花店:Ferns N Petals(鲜花、礼品和蛋糕)
2017/10/16 全球购物
医药营销专业个人自荐信
2013/09/29 职场文书
2014年房地产销售工作总结
2014/12/01 职场文书
毕业生自荐信范文
2015/03/05 职场文书
会计专业求职信范文
2015/03/19 职场文书
妈妈再爱我一次观后感
2015/06/08 职场文书
MySQL复制问题的三个参数分析
2021/04/07 MySQL