postman-请求前参数预处理(pre-request)

news2024/11/26 8:41:28

文章目录

    • 一、Pre-request Scrip的简介
    • 二、 变量
      • 2.1环境变量
      • 2.2全局变量
      • 2.3动态变量(内置变量)
      • 2.4数据变量
    • 三、全局变量的定义和使用
      • 3.1全局变量的定义
      • 3.2全局变量的使用
    • 四、动态变量的使用
      • 4.1通过界面操作完成Gd变量使用
      • 4.2在脚本区写代码调用

Pre-request 与 Tests 类似,区别在于:Pre-request 中的脚本是在执行请求之前运行,而Tests
中的脚本则是在请求完成之后执行。

一、Pre-request Scrip的简介

  • Pre-request Script是在请求发送之前通过需要执行的JS代码片段;
  • 请求参数中包含随机数或者请求中包括一个时间戳,或者请求参数需要加密,都需要在该标签页下添加脚本。

所以主要学习的是变量的使用。简单的JS语法可以自行百度。

二、 变量

2.1环境变量

postman可以设置多套环境,每套环境里可以有多个环境变量。

环境变量是特定的环境下引用的变量,必须要制定对应的环境才能引用到其中的变量

2.2全局变量

postman只可以设置一组全局变量,作用于整个postman。

全局变量是在postman中所有的api都使用的变量,可以直接引用全局变量中的变量,而不用指定环境;

2.3动态变量(内置变量)

Postman也有一些动态变量,只能在request的URL、headers、body中以放在双花括号中间的形式使用。在request header中包含时间戳或者在URL参数中发送一个随机字符串,时间戳和随机字符都属于动态变量。要在预请求或测试脚本中使用动态变量,您需要pm.variables.replaceIn().例如pm.variables.replaceIn(‘{{$randomFirstName}}’)。

2.4数据变量

集合运行器让我们导入CSV或JSON文件,然后在HTTP请求和脚本中使用来自数据文件的值。这些变量称为数据变量。

数据变量使用之前要在pre-request script中定义过。eg:var name=data.name

三、全局变量的定义和使用

3.1全局变量的定义

  • 通过界面操作
    请添加图片描述
  • 在脚本区写代码定义全局变量

调用pm的globals对象的set方法,pm.globals.set(“全局变量名”,变量值),如:pm.globals.set(“ip”,”192.168.1.2″)

以上脚本区可以是Pre-request Script或Tests代码区

3.2全局变量的使用

  • 通过界面操作完
    请添加图片描述
  • 在脚本区写代码调用

调用pm的globals对象的get方法,pm.globals.get(“全局变量名”),如:pm.globals.get(“ip”)

pm.environment.get:从环境变量中获取参数
pm.globals.get:从全局变量中获取参数

四、动态变量的使用

postman自带的已命名变量,所有无须定义,这些变量全部是以$开头命名的。和之前讨论的自定义全局变量一样,有图形界面和代码调用两种使用方式。

4.1通过界面操作完成Gd变量使用

Postman中其他变量的引用方法: {{变量名}}
动态变量则是多一个“ $ ”进行区分: {{$变量名}}

过程基本同自定义全局变量,只是引用时在变量名前带上$,然后用{{}}包含,如:{{$randomBankAccount}}。

4.2在脚本区写代码调用

调用pm的variables对象的replaceIn方法,pm.variables.replaceIn(“Gd变量名”),如:pm.variables.replaceIn(“{{$randomBankAccount}}”)。

资料:
https://www.likecs.com/show-204333945.html
http://www.xmxblog.com/?p=3302

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/345552.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

分享113个HTML电子商务模板,总有一款适合您

分享113个HTML电子商务模板,总有一款适合您 113个HTML电子商务模板下载链接:https://pan.baidu.com/s/1JIlnB8qpg4wIuh-fi0e-Bg?pwdiwvr 提取码:iwvr Python采集代码下载链接:采集代码.zip - 蓝奏云 import os import shuti…

Elasticsearch和Solr的区别

背景:它们都是基于Lucene搜索服务器基础之上开发,一款优秀的,高性能的企业级搜索服务器。(是因为他们都是基于分词技术构建的倒排索引的方式进行查询)开发语言:java语言开发诞生时间:Solr2004年…

CAP和BASE理论

CAP理论CAP是 Consistency、Availability、Partition tolerance 三个词语的缩写,分别表示一致性、可用性、分区容忍性。它指出一个分布式计算系统不可能同时满足以下三点:• 一致性(Consistency) :等同于所有节点访问同…

项目管理工具dhtmlxGantt甘特图入门教程(八):数据加载(四)

dhtmlxGantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表,可满足项目管理控件应用程序的所有需求,是最完善的甘特图图表库这篇文章给大家讲解 dhtmlxGantt 的数据属性和数据库结构。 DhtmlxGantt正版试用下载(qun:764…

既生 useState 何生 useReducer (主讲useReducer)

前言 useState 的底层其实是用useReducer 实践的 useReducer 适合较复杂的state,因为我们可以将状态的改变统一放在reducer 去做管理,像useState 的状态改变就会分散在不同的函式里面。 语法 const [state, dispatch] = useReducer(reducer, initialState, initStateFn)use…

【蓝桥杯选拔赛真题37】python判断自守数 青少年组蓝桥杯python 选拔赛STEMA比赛真题解析

目录 python判断自守数 一、题目要求 1、编程实现 2、输入输出 二、解题思路

后台开发常见层式结构设计:时间轮、跳表、LSM_Tree

目录1、海量并发定时任务:时间轮2、高并发读写有序结构组织;跳表3、空间利用率以及写性能高的磁盘数据组织:LSM_Tree时间轮:内核定时器的实现、skynet、kafka、netty; 跳表:redis、rocksdb LSM-Tree:写多读…

SpringCloud学习笔记 - 自定义及解耦降级处理方法 - Sentinel

1. SentinelRecourse配置回顾 通过之前的学习,我们知道SentinelRecourse配置的资源定位可以通过两种方式实现:一种是URL,另一种是资源名称。这两种限流方式都要求资源ID唯一 RestController public class RateLimitController {GetMapping(…

MySQL -查询日志、二进制日志、错误日志、慢查询日志

文章目录1.错误日志2.二进制日志3.查询日志4.慢查询日志1.错误日志 错误日志是 MySOL中最重要的日志之一,它记录了当 mvsald 启动和停止时,以及服务器在运行过程中发生任何严重错误时的相关信息当数据库出现任何故障导致无法正常使用时,建议…

龙曲良 Tensorflow —— 神经网络与全连接层(自用)

目录 一、数据加载(keras.datasets) 1.1 MNIST 加载 1.2 CIFAR10/100 加载 1.3 tf.data.Dataset.from_tensor_slices 1.4 .shuffle (对应打散数据) 1.5 .map(数据预处理) 1.6 .batch / .repeat 二…

vue3语法

vue3教程 //ps 这里是基本写法 一般项目不需要ref 因为需要一直return 这里是根据在不使用ts后缀 来在.vue里面写setup 如下图所示:setup setup是启动页面会自动执行的一个函数 项目里定义的所有变量,都要在setup当中 在setup定义的变量和方法,都需要r…

chatGTP的全称Chat Generative Pre-trained Transformer

chatGPT,有时候我会拼写为:chatGTP,所以知道这个GTP的全称是很有用的。 ChatGPT全名:Chat Generative Pre-trained Transformer ,中文翻译是:聊天生成预训练变压器,所以是GPT,G是生…

DIDL3_模型选择、复杂度、过欠拟合的相关概念

模型选择、复杂度、过欠拟合的概念模型选择训练误差和泛化误差验证数据集和测试数据集K-则交叉验证(没有足够多数据时使用)过拟合和欠拟合模型容量模型容量的影响估计模型容量控制模型容量数据复杂度处理过拟合的方法(1)&#xff…

关于最近大热的AI,你怎么看?

AI人工智能,相信大家都不陌生,也都接触过不少。但是最近小编在网上冲浪的时候发现各大媒体又掀起了一阵AI热潮,AI不是很常见了吗?是又有什么新的发展吗? 带着强烈的好奇心,我在地铁上读完了一篇关于Chatgp…

【分享】如何通过集简云将ChatGPT人工智能接入到您的内容平台中?

ChatGPT是一款非常强大的人工智能产品,可以有创造性的回复和创作文字,图片,适用于很多办公场景。这篇文章将介绍如何将ChatGPT接入到您的办公系统中。 目前集简云提供了两个ChatGPT应用: OpenAI(ChatGPT)内置:这个是集…

IB化学考什么?这些知识点请收藏

春天来了,IB大考还会远吗?不少学生为IB大考紧张不已。为大家介绍一下IB化学的相关内容。01考试时间和考试形式 2023年IB考试将于2023年4月27日开始,2023年5月19日结束。化学部分的考试分别是在5月11日、12日进行。 IB化学考试包括&#xff1a…

LeetCode刷题--- 61. 旋转链表(快慢指针+闭合为环)

💌 所属专栏:【LeetCode题解(持续更新中)】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的码仔,专注基础和实战分享 ,欢迎…

cors跨域问题

CORS CORS,全称Cross-Origin Resource Sharing,是一种允许当前域(domain)的资源(比如html/js/web service)被其他域(domain)的脚本请求访问的机制,通常由于同域安全策略(…

如何设计一个秒杀系统

秒杀系统要如何设计? 前言 高并发下如何设计秒杀系统?这是一个高频面试题。这个问题看似简单,但是里面的水很深,它考查的是高并发场景下,从前端到后端多方面的知识。 秒杀一般出现在商城的促销活动中,指定…

Cosmos 基础 -- Ignite CLI(二)Module basics: Blog

一、快速入门 Ignite CLI version: v0.26.1 在本教程中,我们将使用一个模块创建一个区块链,该模块允许我们从区块链中写入和读取数据。这个模块将实现创建和阅读博客文章的功能,类似于博客应用程序。最终用户将能够提交新的博客文章&#x…