大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡

大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡

背景

前端开发接口请求,调试,联调,接入数据,前端必不可少工具,postman是一个非常好用的工具。

实战开始

这是官网, 登录下载和安装就不用讲了吧,这个比较easy,然后对于api的接口请求,主要有以下方式,基础知识放这给大家看下

API接口主要的请求方式

API 请求的主要方式包括以下几种:

  1. GET 请求:
    • 用于从服务器获取数据。
    • 请求的数据通常附加在 URL 后面。
    • GET 请求是幂等的,意思是无论调用多少次,结果都是相同的。
    • 示例:
GET /api/users
  1. POST 请求:
    • 用于向服务器发送数据,通常用于提交表单或上传文件。
    • 数据通常在请求体中发送。
    • POST 请求可能会改变服务器的状态,因此不是幂等的。
    • 示例:
POST /api/users{"name": "John Doe","email": "john.doe@example.com"}
  1. PUT 请求:
    • 用于更新服务器上的数据。
    • 数据通常在请求体中发送。
    • PUT 请求是幂等的,意思是无论调用多少次,结果都是相同的。
    • 示例:
PUT /api/users/1{"name": "John Doe","email": "john.doe@example.com"}
  1. DELETE 请求:
    • 用于从服务器删除数据。
    • DELETE 请求是幂等的,意思是无论调用多少次,结果都是相同的。
    • 示例:
DELETE /api/users/1
  1. PATCH 请求:
    • 用于更新服务器上的部分数据。
    • 数据通常在请求体中发送。
    • PATCH 请求不是幂等的,意思是结果可能会因多次调用而不同。
    • 示例:
PATCH /api/users/1{"email": "john.new@example.com"}
  1. OPTIONS 请求:
    • 用于请求服务器支持的通信选项和功能。
    • 通常用于跨域请求的预检。
    • 示例:
OPTIONS /api/users

打开postman 熟悉下

左边collections 你可以当成文件夹,以下是基础知识

左侧请求部分:

  1. Collections:
    • Collections 是组织相关 API 请求的集合,类似于文件夹的概念。你可以根据项目、模块等将请求归类到不同的 Collection 中。
  1. Environments:
    • Environments 是存储环境变量的地方,方便在不同环境(如开发、测试、生产)之间切换。例如,API 基础 URL、身份验证令牌等可以作为环境变量存储。
  1. History:
    • History 列表显示了你最近执行过的请求,便于快速访问和重新执行之前的请求。
  1. APIs、Workspaces:
    • APIs:提供了一个地方来定义和管理你的 API,并提供文档化功能。
    • Workspaces:可以将相关的 Collections、Environments 和团队成员组织在一起,方便协作。

我们新建一个test,然后新建这个短信请求test

然后我们看看右侧的基础知识先,

右侧请求部分:

右侧是实际发送和查看请求的地方。主要包括以下部分:

  1. Request URL:
    • 输入请求的完整 URL,包括协议、域名、路径和查询参数。
  1. Request Method:
    • 选择请求方法,如 GET、POST、PUT、DELETE、PATCH 等。
  1. Params:
    • 查询参数,可以在 URL 中添加键值对,常用于 GET 请求。
  1. Authorization:
    • 设置请求的身份验证信息,如 Bearer Token、Basic Auth 等。
  1. Headers:
    • 设置请求头部信息,如 Content-Type、Authorization 等。
  1. Body:
    • 设置请求的主体内容,常用于 POST、PUT 请求。可以选择不同的格式,如 raw(JSON、XML)、form-data、x-www-form-urlencoded 等。
  1. Tests 和 Pre-request Script:
    • Tests:可以编写测试脚本来验证响应结果。
    • Pre-request Script:可以编写预请求脚本来准备和修改请求参数。
  1. Send 按钮:
    • 点击 Send 按钮发送请求,并在右下角显示响应结果,包括状态码、响应头、响应体等。

ok 基本理论清楚以后,我们实战开始

以简单实战接口测试

先以最近我们api大数据一个简单的月经周期计算来测试,这个大意就是发送最后月经开始日期,和平均月经周期可以预测下次来月经的时间。

接口地址: https://api.youyacao.com/api/yuejing

返回格式: JSON

请求方式: GET

请求示例: https://api.youyacao.com/api/yuejing?lastPeriodStart=2023-12-31&cycleLength=8

请求参数说明:

名称

必填

类型

说明

lastPeriodStart

date

最后一次月经开始日期

cycleLength

int

平均月经周期长度(天)

返回参数说明:

名称

类型

说明

返回示例:

示例

{"code": 200,"msg": "success","data": {"nextPeriodStart": "2024-01-28","ovulationStart": "2024-01-14","ovulationEnd": "2024-01-18"}
}

那么这个就很简单啊,我们添加地址,方式选get

https://api.youyacao.com/api/yuejing

根据基础知识我们需要填写的参数lastPeriodStart和cycleLength ,一个是date类型,一个是int类型,好基础知识又在下面了,

基本数据类型:

  1. 整型(Integer):
    • int: 表示一个整数,例如 -3、0、42。
    • short: 短整型,表示范围较小的整数。
    • long: 长整型,表示范围较大的整数。
    • byte: 字节型,表示更小范围的整数,通常用于存储二进制数据。
  1. 浮点型(Floating Point):
    • float: 单精度浮点型,表示小数,例如 3.14。
    • double: 双精度浮点型,表示更精确的小数。
  1. 字符型(Character):
    • char: 表示单个字符,例如 ‘A’、’中’。
  1. 布尔型(Boolean):
    • boolean: 表示真(true)或假(false)值。

复杂数据类型:

  1. 字符串(String):
    • 表示一串字符,例如 “Hello, World!”。在大多数编程语言中,字符串属于复杂数据类型。
  1. 数组(Array):
    • 表示相同数据类型的集合,例如 int 数组、String 数组。

数据库特定数据类型:

  1. 日期和时间(Date and Time):
    • date: 表示日期,例如 ‘2025-02-11’。
    • time: 表示时间,例如 ‘14:30:00’。
    • timestamp: 表示日期和时间,例如 ‘2025-02-11 14:30:00’。
  1. 文本(Text):
    • varchar: 可变长度字符型,用于存储字符串。
    • text: 长文本型,用于存储较长的字符串。
  1. 二进制(Binary):
    • blob: 二进制大对象,用于存储二进制数据,例如图片、视频。

根据基础知识,那么我们假设,date上次来是2025年1月11日, int类型是整数,比如8天,因此我们是不是得填写

2025-01-11 和 8

点击send 一请求,我们得到了数据

我们需要在row中勾选格式,我们需要json格式,我们勾选raw 然后选择json格式

ok 成功得到我们返回的预测接口信息, 通常状态码 200表示 成功, 这里看到预测 下次月经开始时间为1月19日,开始时期1月13日,结束日期1月17日,好像有点不太准啊,你们试试吧。

{"code": 200,"msg": "success","data": {"nextPeriodStart": "2025-01-19","ovulationStart": "2025-01-13","ovulationEnd": "2025-01-17"}
}

那么针对row 格式里面这些种类,具体是什么意思呢,这里基础知识奉上。

1. raw 格式:

  • JSON:
    • 用于发送 JSON 格式的数据。
    • 适合 RESTful API 的请求和响应。
    • 示例:

json

{"name": "John Doe","email": "john.doe@example.com"
}
  • XML:
    • 用于发送 XML 格式的数据。
    • 常用于 SOAP API 或需要 XML 格式的请求。
    • 示例:

xml

<user><name>John Doe</name><email>john.doe@example.com</email>
</user>

2. form-data 格式:

  • 用于发送包含文件和非文件字段的数据。
  • 每个字段都可以有自己的 Content-Type。
  • 常用于文件上传。
  • 示例:

plaintext

Content-Disposition: form-data; name="name"John Doe
Content-Disposition: form-data; name="email"john.doe@example.com
Content-Disposition: form-data; name="file"; filename="example.txt"
Content-Type: text/plainThis is an example file.

3. x-www-form-urlencoded 格式:

  • 用于发送键值对,数据会被编码为 key1=value1&key2=value2 的格式。
  • 类似于 URL 查询参数,但在请求体中发送。
  • 适合表单提交的数据。
  • 示例:

plaintext

name=John+Doe&email=john.doe%40example.com

4. 其他 raw 格式:

  • Text: 发送纯文本数据。
    • 示例:

plaintext

This is a plain text request body.
  • HTML: 发送 HTML 格式的数据。
    • 示例:

html

<html><body><h1>Hello, World!</h1></body>
</html>

5. binary 格式:

  • 用于发送二进制数据,如文件的字节流。
  • 适合发送非文本文件,如图像、视频等。

选择合适的格式:

  • 根据 API 要求选择合适的格式来发送请求数据。
  • JSON 和 form-data 是常见的选择,JSON 适合发送结构化数据,form-data 适合包含文件的请求。

总之本文目的已达成,前端开发必须可少学习接口请求测试。

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

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

相关文章

开源身份和访问管理方案之keycloak(一)快速入门

文章目录 什么是IAM什么是keycloakKeycloak 的功能 核心概念client管理 OpenID Connect 客户端 Client Scoperealm roleAssigning role mappings分配角色映射Using default roles使用默认角色Role scope mappings角色范围映射 UsersGroupssessionsEventsKeycloak Policy创建策略…

java项目之直销模式下家具工厂自建网站源码(ssm+mysql)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于ssm的直销模式下家具工厂自建网站源码。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 直销模式下家具…

C基础(十)动态内存分配和结构体

动态内存分配 堆区与栈区空间&#xff1a;申请堆区空间需手动操作&#xff0c;使用完要手动释放&#xff1b;栈区空间由系统自动分配和释放。相关函数与概念 malloc&#xff1a;从堆区申请指定字节数的空间&#xff0c;返回首地址&#xff0c;需搭配头文件#include <stdlib.…

图7.1-7.6《分析模式》第7章使用会计模型-原图和UML图对比

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 图7.1 TT示例的包。 账户包持有抽象的会计类型&#xff0c;电话服务包为这个特定领域扩展这些类型。 图7.2 TT的账户模型。 7.3 电话服务的结构模型。 图7.4 创建新电话服务的事件图。…

大模型基本原理(四)——如何武装ChatGPT

传统的LLM存在几个短板&#xff1a;编造事实、计算不准确、数据过时等&#xff0c;为了应对这几个问题&#xff0c;可以借助一些外部工具或数据把AI武装起来。 实现这一思路的框架包括RAG、PAL、ReAct。 1、RAG&#xff08;检索增强生成&#xff09; LLM生成的内容会受到训练…

Qt监控设备离线检测/实时监测设备上下线/显示不同的状态图标/海康大华宇视华为监控系统

一、前言说明 监控系统中一般有很多设备&#xff0c;有些用户希望知道每个设备是否已经上线&#xff0c;最好有不同的状态图标提示&#xff0c;海康的做法是对设备节点的图标和颜色变暗处理&#xff0c;离线的话就变暗&#xff0c;有可能是加了透明度&#xff0c;而大华的处理…

数据结构-栈和队列的应用

目录 前言一、栈的应用二、队列的应用&#xff08;农夫过河问题&#xff09;2.1 问题描述2.2 算法选择2.3 算法精化2.4 算法实现2.5 问题结果 总结 前言 本篇文章使用两个例子说明栈和队列的应用&#xff0c; 对于迷宫问题&#xff0c;使用栈实现深度优先策略解决迷宫问题&…

Acwing-基础算法课笔记之基础算法(差分)

Acwing-基础算法课笔记之基础算法&#xff08;差分&#xff09; 一、一维差分1、差分的概念2、差分思想 二、二维差分操作流程 一、一维差分 1、差分的概念 对于一个给定的序列a&#xff0c;它的差分序列b定义为&#xff1a; b [ 1 ] a [ 1 ] b[1]a[1] b[1]a[1]&#xff0c…

SkyWalking 10.1.0 实战:从零构建全链路监控,解锁微服务性能优化新境界

文章目录 前言一、集成SkyWalking二、SkyWalking使用三、SkyWalking性能剖析四、SkyWalking 告警推送4.1 配置告警规则4.2 配置告警通知地址4.3 下发告警信息4.4 测试告警4.5 慢SQL查询 总结 前言 在传统监控系统中&#xff0c;我们通过进程监控和日志分析来发现系统问题&…

【动态规划】风扫枯杨,满地堆黄叶 - 9. 完全背包问题

本篇博客给大家带来的是完全背包问题之动态规划解法技巧. &#x1f40e;文章专栏: 动态规划 &#x1f680;若有问题 评论区见 ❤ 欢迎大家点赞 评论 收藏 分享 如果你不知道分享给谁,那就分享给薯条. 你们的支持是我不断创作的动力 . 王子,公主请阅&#x1f680; 要开心要快乐顺…

MyBatis的工作流程是怎样的?

大家好&#xff0c;我是锋哥。今天分享关于【MyBatis的工作流程是怎样的&#xff1f;】面试题。希望对大家有帮助&#xff1b; MyBatis的工作流程是怎样的&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 MyBatis 的工作流程可以分为几个主要的步骤&…

python-leetcode 25.环形链表

题目&#xff1a; 给定一个链表的头节点head,判断链表中是否有环。 如果链表中有某个节点&#xff0c;可以通过连续跟踪next指针再次到达&#xff0c;则链表中存在环。为了表示给定链表中的环&#xff0c;评测系统内部使用整数pos来表示链表尾连接到链表中的位置&#xff08;…

瑞芯微开发板/主板Android调试串口配置为普通串口方法 深圳触觉智能科技分享

本文介绍瑞芯微开发板/主板Android调试串口配置为普通串口方法&#xff0c;不同板型找到对应文件修改&#xff0c;修改的方法相通。触觉智能RK3562开发板演示&#xff0c;搭载4核A53处理器&#xff0c;主频高达2.0GHz&#xff1b;内置独立1Tops算力NPU&#xff0c;可应用于物联…

Datawhale 组队学习 Ollama教程 task1

一、Ollama 简介 比喻&#xff1a;Ollama 就像是一个“魔法箱子”&#xff0c;里面装满了各种大型语言模型&#xff08;LLM&#xff09;。你不需要懂复杂的魔法咒语&#xff08;配置&#xff09;&#xff0c;只需要轻轻一按&#xff08;一条命令&#xff09;&#xff0c;就能让…

vulnhub 靶场 —— NullByte

免责声明 本博客文章仅供教育和研究目的使用。本文中提到的所有信息和技术均基于公开来源和合法获取的知识。本文不鼓励或支持任何非法活动&#xff0c;包括但不限于未经授权访问计算机系统、网络或数据。 作者对于读者使用本文中的信息所导致的任何直接或间接后果不承担任何…

使用 meshgrid函数绘制网格点坐标的原理与代码实现

使用 meshgrid 绘制网格点坐标的原理与代码实现 在 MATLAB 中&#xff0c;meshgrid 是一个常用函数&#xff0c;用于生成二维平面网格点的坐标矩阵。本文将详细介绍如何利用 meshgrid 函数生成的矩阵绘制网格点的坐标&#xff0c;并给出具体的代码实现和原理解析。 实现思路 …

【STM32系列】利用MATLAB配合ARM-DSP库设计FIR数字滤波器(保姆级教程)

ps.源码放在最后面 设计IIR数字滤波器可以看这里&#xff1a;利用MATLAB配合ARM-DSP库设计IIR数字滤波器&#xff08;保姆级教程&#xff09; 前言 本篇文章将介绍如何利用MATLAB与STM32的ARM-DSP库相结合&#xff0c;简明易懂地实现FIR低通滤波器的设计与应用。文章重点不在…

使用mermaid画流程图

本文介绍使用mermaid画流程图&#xff0c;并给出几个示例。 背景 目前&#xff0c;除有明确格式要求的文档外&#xff0c;笔者一般使用markdown写文档、笔记。当文档有图片时&#xff0c;使用Typora等软件可实时渲染&#xff0c;所见即所得。但如果文档接收方没有安装相关工具…

12.项目结构

后端结构 ruoyi-admin 项目启动的入口 提供了两种启动方式 1.RuoYiApplication基于springboot,内置tomcat,直接运行。 2.RuoYiServletInitializer将springboot项目打成一个war包,用外置的servlet容器来运行。 通用功能的controller 后台登录相关的、权限控制相关的、数据字…

基于springboot+vue的游戏创意工坊与推广平台的设计与实现

开发语言&#xff1a;Java框架&#xff1a;springbootJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;…