基于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聚焦于第一个字段的代码
Oct 15 Javascript
提高javascript效率 一次判断,而不要次次判断
Mar 30 Javascript
网页禁用右键菜单和鼠标拖动选择方法小结
Feb 25 Javascript
JavaScript淡入淡出渐变简单实例
Aug 06 Javascript
jQuery焦点图轮播特效代码分享(3款)
Sep 05 Javascript
AngularJS equal比较对象实例详解
Sep 14 Javascript
微信小程序 textarea 详解及简单使用方法
Dec 05 Javascript
jQuery中DOM节点的删除方法总结(超全面)
Jan 22 Javascript
jquery 通过ajax请求获取后台数据显示在表格上的方法
Aug 08 jQuery
JS添加或删除HTML dom元素的方法实例分析
Mar 05 Javascript
解决jquery validate 验证不通过后验证正确的信息仍残留在label上的方法
Aug 27 jQuery
微信小程序之滑动页面隐藏和显示组件功能的实现代码
Jun 19 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运算符的知识大全
2011/11/03 PHP
PHP生成自定义长度随机字符串的函数分享
2014/05/04 PHP
thinkPHP简单遍历数组方法分析
2016/05/16 PHP
解决Laravel自定义类引入和命名空间的问题
2019/10/15 PHP
javascript基础的动画教程,直观易懂
2007/01/10 Javascript
Javascript JSQL,SQL无处不在,
2010/05/05 Javascript
javascript判断ie浏览器6/7版本加载不同样式表的实现代码
2011/12/26 Javascript
nodejs中使用monk访问mongodb
2014/07/06 NodeJs
JS+CSS实现的拖动分页效果实例
2015/05/11 Javascript
js实现的万能flv网页播放器代码
2016/04/30 Javascript
轻松5句话解决JavaScript的作用域
2016/07/15 Javascript
angular route中使用resolve在uglify压缩后问题解决
2016/09/21 Javascript
JavaScript制作弹出层效果
2016/12/02 Javascript
10道典型的JavaScript面试题
2017/03/22 Javascript
nodejs爬虫遇到的乱码问题汇总
2017/04/07 NodeJs
详解用函数式编程对JavaScript进行断舍离
2017/09/18 Javascript
vue自动化表单实例分析
2018/05/06 Javascript
图片文字识别(OCR)插件Ocrad.js教程
2018/11/26 Javascript
移动端(微信等使用vConsole调试console的方法
2019/03/05 Javascript
一文快速了解JQuery中的AJAX
2019/05/31 jQuery
如何在vue项目中嵌入jsp页面的方法(2种)
2020/02/06 Javascript
vue 实现根据data中的属性值来设置不同的样式
2020/08/04 Javascript
vue实现点击出现操作弹出框的示例
2020/11/05 Javascript
Python创建系统目录的方法
2015/03/11 Python
使用Python实现windows下的抓包与解析
2018/01/15 Python
浅析Python 条件控制语句
2020/07/15 Python
Python confluent kafka客户端配置kerberos认证流程详解
2020/10/12 Python
python 基于opencv实现图像增强
2020/12/23 Python
css3实现图片遮罩效果鼠标hover以后出现文字
2013/11/05 HTML / CSS
资生堂美国官网:Shiseido美国
2016/09/02 全球购物
哈曼俄罗斯官方网上商店:Harman.club
2020/07/24 全球购物
Yahoo-PHP面试题3
2012/01/14 面试题
护士实习自我鉴定
2013/10/22 职场文书
大学军训自我鉴定大全
2014/09/18 职场文书
工程部经理岗位职责
2015/02/02 职场文书
创业计划书之服装
2019/10/07 职场文书