postman接口工具的详细使用教程
Postman 是一种功能强大的 API 测试工具,可以帮助开发人员和测试人员轻松地发送 HTTP 请求并分析响应。以下是对 Postman 接口测试工具的详细介绍:
- 安装与设置
安装步骤 访问 Postman 官网,点击右上角的“Download”按钮。
选择你的操作系统(Windows、macOS、Linux),下载相应的安装包。 运行安装包,按照提示完成安装。 设置步骤 安装完成后,启动
Postman。 注册或登录你的 Postman 账户,可以使用 Google 账户快速登录。 登录后,你可以同步你的数据到 Postman
云端,方便在不同设备间切换。
- Postman 的用户界面主要由以下几个部分组成:
顶部导航栏 New: 创建新请求、集合、环境、工作区等。 Import: 导入请求、集合、环境等文件(支持多种格式,如
JSON、HAR、Curl)。 Runner: 打开集合运行器,用于批量运行集合中的请求。 Tools: 访问附加工具,如 API
监控、Mock 服务等。 Explore: 浏览公开的 API 和集合。 Settings: 配置 Postman
的各种设置,如主题、快捷键、代理等。 侧边栏 Collections: 管理你的集合,可以创建、编辑、删除和导出集合。 APIs: 管理你的
API 定义,可以创建、编辑和版本控制 API。 Environments: 管理环境变量,可以创建、编辑和删除环境。 Mock
Servers: 创建和管理 Mock 服务器,用于模拟 API 响应。 Monitors: 创建和管理监控任务,定期运行集合并监控 API
可用性。 History: 查看你发送的请求历史记录,可以快速重新发送请求。 请求构建区 Request URL: 输入请求的
URL,可以使用环境变量。 HTTP 方法: 选择请求的方法,如 GET、POST、PUT、DELETE 等。 Params:
添加查询参数,Postman 会自动将参数附加到 URL 后面。 Authorization: 配置请求的授权方式,如 Basic
Auth、Bearer Token、OAuth 2.0 等。 Headers: 添加请求头信息,可以自定义头部或选择常用头部。 Body:
配置请求的主体,可以选择多种格式,如
form-data、x-www-form-urlencoded、raw(JSON、XML、Text)、binary 等。
Pre-request Script: 编写预请求脚本,在请求发送前执行,用于动态设置请求参数。 Tests:
编写测试脚本,在请求发送后执行,用于验证响应数据。 响应显示区 Status: 显示响应状态码和状态信息。 Time: 显示请求的响应时间。
Size: 显示响应的大小。 Body: 显示响应主体,可以选择多种格式查看(如 JSON、HTML、Text、XML 等)。
Cookies: 显示响应的 Cookies 信息。 Headers: 显示响应头信息。
- 主要功能详解
发送 HTTP 请求 在 Postman 中创建一个新请求。 输入请求的 URL 和选择请求方法(如 GET)。
如果需要,添加查询参数、请求头、请求主体等。 点击“发送”(Send)按钮,Postman 会发送请求并显示响应。 参数化请求
创建环境变量:点击右上角的齿轮图标,选择“Manage Environments”,然后创建一个新的环境,添加变量及其值。
使用环境变量:在请求的 URL、头部、主体中使用环境变量,如 {{baseUrl}}/api/v1/resource。
选择环境:在发送请求前,从环境下拉菜单中选择相应的环境。 验证响应 编写测试脚本:在请求的“Tests”标签页中,编写 JavaScript
脚本来验证响应数据。
pm.test("Status code is 200", function () {pm.response.to.have.status(200);
});
pm.test("Response time is less than 200ms", function () {pm.expect(pm.response.responseTime).to.be.below(200);
});
pm.test("Response contains userId", function () {var jsonData = pm.response.json();pm.expect(jsonData).to.have.property('userId');
});
发送请求后,Postman 会自动执行测试脚本,并显示测试结果。 API 文档生成 在 Postman 中创建和组织你的 API
请求和集合。 在集合上点击右键,选择“Generate Collection Documentation”。 配置文档的标题、简介等信息。
Postman 会生成一个漂亮的 API 文档页面,你可以分享这个文档链接给其他团队成员或开发者。 流程控制
打开集合运行器(Collection Runner)。 选择要运行的集合和环境。 配置运行选项,如迭代次数、延迟时间等。
点击“Run”按钮,Postman 会按顺序执行集合中的所有请求,并显示每个请求的执行结果。 Mock 服务 在 Postman
中创建一个新的 Mock 服务器。 定义 Mock 响应的路径、方法、状态码和响应体。 生成 Mock 服务器的 URL,可以将其用作
API 开发和测试的临时替代品。 自动化测试 安装 Newman 命令行工具:在终端中运行 npm install -g newman。
导出集合:在 Postman 中点击集合右上角的“…”按钮,选择“Export”,并选择导出的格式(如 JSON)。
运行集合:在终端中运行 newman run path/to/your_collection.json。 配置 CI/CD:将 Newman
集成到你的 CI/CD 管道中,实现自动化测试。
- 使用示例
创建一个简单的 POST 请求 打开 Postman 并登录。 点击“新建”(New)按钮,选择“请求”(Request)。
输入请求的名称和选择保存的集合。 在请求 URL 中输入 API 的 URL。 选择请求方法为 POST。
在“Body”标签页中,选择“raw”并将格式设置为 JSON,然后输入请求主体,例如:
{"name": "John Doe","email": "john.doe@example.com"
}
点击“发送”(Send)按钮,查看响应数据。 使用环境变量和预请求脚本 创建环境变量:点击右上角的齿轮图标,选择“Manage
Environments”,创建一个新的环境,添加变量 baseUrl 和 authToken。
编写预请求脚本:在请求的“Pre-request Script”标签页中,编写脚本设置动态参数,例如:
pm.environment.set("currentTimestamp", new Date().toISOString());
使用环境变量:在请求 URL 中使用 {{baseUrl}}/api/v1/resource,在请求头中添加 Authorization: Bearer {{authToken}}。
发送请求并查看结果。 编写复杂的测试脚本 在请求的“Tests”标签页中,编写复杂的测试脚本,例如:
pm.test("Check multiple conditions", function () {var jsonData = pm.response.json();pm.expect(jsonData).to.have.property('userId');pm.expect(jsonData.userId).to.equal(1);pm.expect(jsonData).to.have.property('title');pm.expect(jsonData.title).to.be.a('string');
});
pm.test("Response time is less than 500ms", function () {pm.expect(pm.response.responseTime).to.be.below(500);
});
pm.test("Status code is 200", function () {pm.response.to.have.status(200);
});
通过这些详细的介绍和示例,希望能帮助你更全面地理解和使用 Postman 工具,提高 API 测试的效率和质量。
相关文章:
postman接口工具的详细使用教程
Postman 是一种功能强大的 API 测试工具,可以帮助开发人员和测试人员轻松地发送 HTTP 请求并分析响应。以下是对 Postman 接口测试工具的详细介绍: 安装与设置 安装步骤 访问 Postman 官网,点击右上角的“Download”按钮。 选择你的操作系统…...
C语言经典例题-17
1.最小公倍数 正整数A和正整数B的最小公倍数是指能被A和B整除的最小的正整数,设计一个算法,求输入A和B的最小公倍数。 输入描述:输入两个正整数A和B。 输出描述:输出A和B的最小公倍数。 输入:5 7 输出:…...
鸿蒙学习(-)
.ets文件结构 //页面入口 Entry //组件 Component struct test{//页面结构build(){//容器 **一个页面只能有一个根容器,父容器要有大小设置**}1、Column 组件 沿垂直方向布局的组件,可以包含子组件 接口 Column({space}) space的参数为string | numbe…...
【TB作品】MSP430G2553,单片机,口袋板, 烘箱温度控制器
题3 烘箱温度控制器 设计一个基于MSP430的温度控制器,满足如下技术指标: (1)1KW 电炉加热,最度温度为110℃ (2)恒温箱温度可设定,温度控制误差≦2℃ (3)实时显…...
PCM、WAV,立体声,单声道,正弦波等音频素材
1)PCM、WAV音频素材,分享给将要学习或者正在学习audio开发的同学。 2)内容属于原创,若转载,请说明出处。 3)提供相关问题有偿答疑和支持。 常用的Audio PCM WAV不同采样率,不同采样深度&#…...
基于深度学习的图像去雾
基于深度学习的图像去雾 图像去雾是指从有雾的图像中恢复清晰图像的过程。传统的图像去雾方法(如暗原色先验、图像分层法等)在某些情况下表现良好,但在复杂场景下效果有限。深度学习方法利用大量的数据和强大的模型能力,在图像去…...
中国电子学会青少年编程等级考试真题下载
全国青少年软件编程等级考试真题下载,有答案解析 1. 图形化Scratch一级下载 链接:https://pan.baidu.com/s/1C9DR9-hT1RUY3417Yc8RZQ?pwdg8ac 提取码:g8ac 2.图形化Scratch二级下载 链接:https://pan.baidu.com/s/1HI7GaI4ii…...
PostMan动态设置全局变量
1. 前言 在开发过程中调试接口,一般都会使用PostMan。 其中有几个变量可能是好几个接口共用的,就会出现频繁手动复制(ctrlc)、粘贴(ctrlv)的情况。 这个过程得非常留意,生怕复制错了,或删减了某些东西,导致接口报错。…...
ACL 2023事件相关(事件抽取、事件关系抽取、事件预测等)论文汇总
ACL 2023事件抽取相关(事件抽取、事件关系抽取、事件预测等)论文汇总,后续会更新全部的论文讲解。 Event Extraction Code4Struct: Code Generation for Few-Shot Event Structure Prediction 数据集:ACE 2005 动机:与自然语言相比…...
力扣:59. 螺旋矩阵 II(Java,模拟)
目录 题目描述示例 1:代码实现 题目描述 给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1: 输入:n 3 输出:[[1,2,3],[8,9,4],[7,6,5…...
记录SpringBoot启动报错解决
记录SpringBoot启动报错解决 报错现场 Failed to configure a DataSource: url attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class Action: Consider the following:If you want an embedde…...
微软代码页标识符 (Code Page Identifiers)
代码页标识符 (Code Page Identifiers) 双语对照 Identifiere标识符.NET Name.NET 名称Additional information其他信息037IBM037IBM EBCDIC US-CanadaIBM EBCDIC US-Canada437IBM437OEM United StatesOEM 美国500IBM500IBM EBCDIC InternationalIBM EBCDIC 国际字符集708ASMO…...
刷题——二叉树的后续遍历
方法一:双指针法 void postorder(TreeNode* root, vector<int>&res){if(root NULL) return;postorder(root->left,res);postorder(root->right,res);res.push_back(root->val);}vector<int> postorderTraversal(TreeNode* root) {// wri…...
用友U8 Cloud smartweb2.showRPCLoadingTip.d XXE漏洞复现
0x01 产品简介 用友U8 Cloud 提供企业级云ERP整体解决方案,全面支持多组织业务协同,实现企业互联网资源连接。 U8 Cloud 亦是亚太地区成长型企业最广泛采用的云解决方案。 0x02 漏洞概述 用友U8 Cloud smartweb2.showRPCLoadingTip.d 接口处存在XML实体,攻击者可通过该漏…...
React中的事件绑定的四种方式
1.在构造函数中绑定事件 constructor(props) {super(props);this.handleClick this.handleClick.bind(this);}2.在调用时显式绑定 <button onClick{this.handleClick.bind(this)}>Click me</button>3.使用箭头函数 handleClick () > {console.log(Button cli…...
小文件过多的解决方法(不同阶段下的治理手段,SQL端、存储端以及计算端)
上一篇介绍了小文件出现的原因以及为什么治理小文件问题迫在眉睫,本篇将为读者讲述在不同阶段下小文件治理的最佳手段以及如何针对性的解决小文件过多的问题。 小文件过多如何解决、治理方法 小文件是特别常见的现象,解决小文件问题迫在眉睫࿰…...
SGPT论文阅读笔记
这是篇想要用GPT来提取sentence embedding的工作,提出了两个框架,一个是SGPT-BE,一个是SGPT-CE,分别代表了Bi-Encoder setting和Cross-Encoder setting。CE的意思是在做阅读理解任务时,document和query是一起送进去&am…...
虚拟机与主机的网络桥接
虚拟机网路桥接是一种网络配置方式,它允许虚拟机与物理网络中的其他设备直接通信。在桥接模式下,虚拟机的网络接口通过主机的物理网卡连接到局域网中,就像主机本身一样,拥有自己的MAC地址和IP地址。这种方式使得虚拟机可以像独立的…...
urfread刷算法题day1|LeetCode2748.美丽下标的数目
题目 题目链接 LeetCode2748.美丽下标对的数目 题目描述 给你一个下标从 0 开始的整数数组 nums 。 如果下标对 i、j 满足 0 ≤ i < j < nums.length , 如果 nums[i] 的 第一个数字 和 nums[j] 的 最后一个数字 互质 , 则认为 nums[i] 和 nums…...
面向对象修炼手册(四)(多态与空间分配)(Java宝典)
🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀面向对象修炼手册 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 前言 1 多态 1.1 多态的形式&…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
三体问题详解
从物理学角度,三体问题之所以不稳定,是因为三个天体在万有引力作用下相互作用,形成一个非线性耦合系统。我们可以从牛顿经典力学出发,列出具体的运动方程,并说明为何这个系统本质上是混沌的,无法得到一般解…...
nnUNet V2修改网络——暴力替换网络为UNet++
更换前,要用nnUNet V2跑通所用数据集,证明nnUNet V2、数据集、运行环境等没有问题 阅读nnU-Net V2 的 U-Net结构,初步了解要修改的网络,知己知彼,修改起来才能游刃有余。 U-Net存在两个局限,一是网络的最佳深度因应用场景而异,这取决于任务的难度和可用于训练的标注数…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
comfyui 工作流中 图生视频 如何增加视频的长度到5秒
comfyUI 工作流怎么可以生成更长的视频。除了硬件显存要求之外还有别的方法吗? 在ComfyUI中实现图生视频并延长到5秒,需要结合多个扩展和技巧。以下是完整解决方案: 核心工作流配置(24fps下5秒120帧) #mermaid-svg-yP…...
Spring Boot + MyBatis 集成支付宝支付流程
Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例(电脑网站支付) 1. 添加依赖 <!…...
数据库——redis
一、Redis 介绍 1. 概述 Redis(Remote Dictionary Server)是一个开源的、高性能的内存键值数据库系统,具有以下核心特点: 内存存储架构:数据主要存储在内存中,提供微秒级的读写响应 多数据结构支持&…...
【51单片机】4. 模块化编程与LCD1602Debug
1. 什么是模块化编程 传统编程会将所有函数放在main.c中,如果使用的模块多,一个文件内会有很多代码,不利于组织和管理 模块化编程则是将各个模块的代码放在不同的.c文件里,在.h文件里提供外部可调用函数声明,其他.c文…...
