2023版Postman接口测试使用全指南(原来使用 Postman测试API接口如此简单)

2023-05-16

下面是一篇详细介绍postman接口测试的文章,如果文章内容不太明白的话, 我建议看看视频版本,更加清洗,更加直观!

最详细的postman接口测试实战教程_哔哩哔哩_bilibili最详细的postman接口测试实战教程共计129条视频,包括:1、Postman之接口测试灵魂考问、2、Postman之接口返回数据和JSON详解、3、Postman之接口测试协议等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV1rh411S7Qp/?spm_id_from=333.337.search-card.all.click

Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件

Postman背景介绍

用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的Firebug等网页调试工具。今天给大家介绍的这款网页调试工具不仅可以调试简单的css、html、脚本等简单的网页基本信息,它还可以发送几乎所有类型的HTTP请求!Postman在发送网络HTTP请求方面可以说是Chrome插件类产品中的代表产品之一。

Postman的操作环境

postman适用于不同的操作系统,Postman Mac、Windows X32、Windows X64、Linux系统,还支持postman 浏览器扩展程序、postman chrome应用程序等。

Postman重要提示:

由于2018年初chrome停止对chrome应用程序的支持,你的postman插件可能无法正常使用了。目前chrome应用商店能使用的就是chrome扩展程序和主题背景。
 

一、什么是接口测试?

我们要想知道接口测试怎么做,首先要明白接口测试是什么?一般像系统内的组件接口数据交互测试、不同系统与系统之间的接口数据交互测试等,我们都可以称之为接口测试 !

那么接口测试是怎么来测试接口的呢?

接口测试就是通过接口的不同情况下的输入和与之对用的输出之间的关系,看看是否满足接口规范所规定的功能性、安全性以及性能方面的要求.

简单的说:“接口测试是就是在没有前端页面或者前端还没完成的情况下,代替前端页面或者第三方使用者,来验证后端的接口实现是否符合接口规范。”

二、接口测试流程

1.拿到接口文档。(抓包:F12,fiddler,charles),熟悉接口业务,接口地址,请求参数,请求头信息,请求方式,鉴权方式。
2.编写接口用例编写以及评审。
3.使用接口测试工具执行接口测试。
4.输出接口测试报告。

三、接口测试执行

鉴权码:鉴权你是否有访问此接口的权限的一个字符串码。
获取鉴权码的方式:
        1.有一个专门的获取token鉴权码的接口。
        2.登录之后自动生成token鉴权码。
get请求以?方式传参,多个参数之间用@分隔。
请求的功能页签:


Params:get请求传参 Authorization:是验证是否拥有从服务器访问所需数据的权限。
Headers:请求头。
Body:(post请求传参)
        1.form-data:表单:键值对,还有文件上传。
        2.x-www-form-urlenconded  表单:键值对。
        3.raw:传各种其他类型的参数,比如:Text,Javascript,json,html,xml
        4.binary:用于上传二进制文件。
pre-erquest script:接口请求之前的js脚本。
Tests:接口请求之后的断言(断言接口是否请求成功)
Settings:对请求的设置。
-------------
Cookie:是Postman用于自动管理iCookie关联。
响应的功能页签:

Body:响应内容。
Pretty:json格式,raw:文本格式,proview:网页格式。
Cookie:响应的Cookie信息。
Headers:响应头
TestResults:断言结果
响应状态码:200
响应信息:OK
响应时间和响应字节数
--------------------------------------------------------------------------------------------
Console:控制台,用于接口测试调试。
面试题:
接口测试中get请求和post请求的区别是什么?
1.get请求一般是获取资源,psot请求一般是提交资源。
2.get是通过在地址栏中以?方式传参,多个参数用&分隔,post请求是通过表单传参。
3.post比get安全


四、全局变量和环境变量

全局变量:能够在所有的接口请求里面使用的变量的叫全局变量。
环境变量:环境变量让代码能够在不同的环境下去执行。环境变量其实也是全局变量。
http协议默认端口:80
https协议默认端口:443
 

五、接口关联

 1. 创建一个request请求(响应结果假设是下面的json)

{
    "code": 0,
    "msg": "OK",
    "data": {
        "id": 8036687,
        "account": "XXXX",
        "token": "eyJhbGciOiJIUzUxMiJ9.eyJtZW1iZXJfaWQiOjgwMzY2ODcsImV4cCI6MTU4NzUyNzg0OX0.L7lDiNs70mAZk6yxhAxDwDC95ISNWb-2MXe4dzWMLmDfOzGrgkPvM12jFoEgMYcc3nnvtfWfOpDxYwngDkMtIw"
    }

2. 在Tests中添加JavaScript代码,用来获取鉴权

pm.test("V2", function () {
    //jsonData:响应的所有json信息
    var jsonData = pm.response.json();
    var token = jsonData.data.token;
    //将token值添加到token环境变量中
    pm.environment.set("token",token)
});

2、在需要用到token鉴权的接口中获取登录时添加的环境变量token值

在请求头中添加Authorization属性,属性值为token值

获取环境变量中的token值,用{{}}进行获取

点击send成功运行

六、Postman动态参数 

接口测试中,经常用到上下游接口的依赖关系,下游接口的请求依赖上游接口的响应报文作为入参。

这样就是需要我们捕捉上游接口的响应内容,存储起来作为下游接口请求的入参。

这里举两个例子获取动态参数,分别是xml和json格式的请求

xml传参格式

1、上游接口是获取省份信息、下游接口是通过省份获取城市信息

我们需要在接口请求的test页签下,捕捉上游接口的响应内容,并存起来

方法:
//把xml格式转为json格式---jsonObject
var jsonObject = xml2Json(responseBody);

var js=jsonObject.ArrayOfString.string[27];

postman.setGlobalVariable("province", js);

获取到身份信息,并存在全局变量里面 

2、下游获取城市接口请求带上变量province   格式为{{province}},请求成功并返回数据 

json格式请求

示例:因为充值记录接口中需要用到登录接口返回报文中的信息如下

1.以获取token(JWT)和uid为例

2.在登录接口的tests中写入代码(因为登录接口报文信息中有返回JWT和uid) 

方法
var jsonData = JSON.parse(responseBody);
tests["Your test name"] = jsonData.value === 100;

//获取responseBody---作为一个jsonData变量,然后在取到uid 的值
postman.setGlobalVariable("uid", jsonData.data.user.id);

//获取jwt
postman.setGlobalVariable("jwt", jsonData.data.JWT);

 2、把获取的参数存入全局变量;JWT和uid的地方设置变量{{JWT}}和{{uid}}

3、下游接口请求带上该参数 

七、断言 

1.设置环境变量--Setting an environment variable 

postman.setEnvironmentVariable("key", "value");

2.设置全局变量--Set a global variable

postman.setGlobalVariable("key", "value");

3.检查响应中包含string--Check if response body contains a string

tests["Body matches string"] = responseBody.has("string_you_want_to_search");

4.转化XML格式的响应成JSON对象---Convert XML body to a JSON object

var jsonObject = xml2Json(responseBody);

5.检查响应body中等于指定string--Check if response body is equal to a string

 tests["Body is correct"] = responseBody === "response_body_string";

6.检查JSON某字段值--Check for a JSON value

var data = JSON.parse(responseBody);

tests["Your test name"] = data.value === 100;

7.检查Content-Type是否包含在header返回(大小写不敏感)--Content-Type is present (Case-insensitive checking)

 tests["Content-Type is present"] = postman.getResponseHeader("Content-Type"); //Note: the getResponseHeader() method returns the header value, if it exists.

8.检查Content-Type是否包含在header返回(大小写敏感)--Content-Type is present (Case-sensitive)

 tests["Content-Type is present"] = responseHeaders.hasOwnProperty("Content-Type");

9.检查请求耗时时间小于200ms--Response time is less than 200ms

tests["Response time is less than 200ms"] = responseTime < 200;

10.检查Status code为200--Status code is 200

tests["Status code is 200"] = responseCode.code === 200;

11.检查Code name包含指定string--Code name contains a string

 tests["Status code name has string"] = responseCode.name.has("Created");

12.检查成功post的请求status code--Succesful POST request status code

tests["Successful POST request"] = responseCode.code === 201 || responseCode.code === 202;

13.为JSON data使用微小验证器--Use TinyValidator for JSON data

var schema = {

 "items": {

 "type": "boolean"

 }

};

var data1 = [true, false];

var data2 = [true, 123]; 

console.log(tv4.error);

tests["Valid Data1"] = tv4.validate(data1, schema);

tests["Valid Data2"] = tv4.validate(data2, schema);

Sample data files 

JSON files are composed of key/value pairs

八、postman用例的批量执行

数据驱动:csv,json
特别注意: 在参数里面取数据文件的值和取全局变量一致,在断言里面取数据文件的值使
用:data["名称"]
csv文件编码格式必须为:UTF-8

九、、必须带请求头的接口的测试方式

例如:百度的搜索就是一个接口

当你不知道用哪些请求头的时候,可以采取抓包的方式

Host:请求的主机地址

connection keep-alive  连接方式 保持活跃

Accept-Encoding: gzip, deflate, br   客户端接收的数据压缩方式

Accept-Language: zh-CN,zh;q=0.9,en;q=0.8 客户端接收的数据编码格式

cookie:请求的cookie信息  

is_referer: 百度一下,你就知道

is_xhr: 1

Referer: 来源

sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="98", "Google Chrome";v="98"

sec-ch-ua-mobile: ?0

sec-ch-ua-platform: "Windows"

Sec-Fetch-Dest: empty

Sec-Fetch-Mode: cors

Sec-Fetch-Site: same-origin

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.81 Safari/537.36      请求的客户端的类型(模拟浏览器的请求)

X-Requested-With: 异步请求

Content -Type   请求的是数据类型

form-data: Content-Type:multipart/form-data  表单文件上传

x-www-from-urlencoded: Content-Type x-www-from-urlencoded  表单提交

raw:                               Content-Type    application/json  根据你选择的数据类型来决定

binary                           Content-Type        binary  二进制文件

十、接口MOCK

使用场景:前后端分离,后端的接口数据没有出来,前端需要调用后的接口实现业务,为了
保证我们前端能够正常的开发以及测试,那么就需要使用MOCK,模拟桩。模拟一个接
 

十一、Postman接口测试之Cookie鉴权。

概念

Cookie和鉴权的区别,cookie一般指缓存在本地的数据;鉴权一般指验证用户是否拥有访问系统的权利

鉴权分类

  1. Basic auth:基础鉴权,数据没有加密可明文显示,一般在测试环境使用,不在线上环境使用
  2. Oauth 2.0:并且包含了第三方登录方式,例如微博、微信、QQ等使用第三方账号进行授权登录)
  3. DigestAuth:对用户名和密码进行加密
  4. token basic authorization:目前在app端常用的是token basic authorization,就是服务端返回token给app端,app端每次请求的时候,带上对应的token去访问,token正确的时候,则服务端允许其正确访问

Postman提供了关于鉴权的demo如下:

Basic-auth/digestauth

直接打开接口地址https://postman-echo.com/basic-auth 或 https://postman-echo.com/digest-auth ,会弹出登录框,如图:不同的是basix-auth的用户名和密码是明文传递的,容易被人劫持;而digestauth的是加密传递

Oauth 2.0

讲basic auth的type改成Oauth 2.0,然后根据引导设置即可 

 十二、加密解密

前的市面上有哪些加密的方式:

1.对称式的加密方式(私钥加密):不常用DES和AES,已经别淘汰了。

Base64加密:

//base64加密方式:  
var username = CryptoJS.enc.Utf8.parse("admin");//转为utf‐8  
var base64_username = CryptoJS.enc.Base64.stringify(username);//转为Base64 加密
console.log(base64_username);

Base64解密: 

//base64解密方式: 
var username = CryptoJS.enc.Base64.parse("YWRtaW4=");//解密
var new_username = username.toString(CryptoJS.enc.Utf8);//转为utf‐8
console.log(new_username)

2.非对称的加密方式(双钥《公钥和私钥》加密):RSA加密方式
由一个密码生成的双钥,公钥加密,私钥解密。私钥加密,公钥解密
3.只加密不解密
1.MD5加密。

//MD5加密
var new_username2 = CryptoJS.MD5("admin").toString().toUpperCase();
console.log(new_username2)

2.SHA1,SHA3,SHAN........
混合加密(最定义加密规则):
快分期:贷款业务。加密都是自定义的混合加密。
admin,base64(YWRtaW4=),YWRtaW4=+DFJK/模块名首字母,MD5加密。
 

今天的文章就到这里哈。

下一篇文章:postman+newman+jenkins实现持续集成,想了解的可以关注一波  

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2023版Postman接口测试使用全指南(原来使用 Postman测试API接口如此简单) 的相关文章

  • 在ROS中使用超声波(sonar)导航避障

    1 下载sonar layer的代码 https github com DLu navigation layers 实际只需要其中的range sensor layer放到工作空间catkin make 实验时放置于src中 xff0c 可
  • rtabmap更加适合视觉SLAM建图和导航

    slam问题目前主要集中在如何建立一个好的地图 xff0c 至于后续如何使用地图这部分工作研究的不多 xff0c 不过我个人恰好在做这部分工作所以答一下个人见解 首先 xff0c 有一张好的地图 xff0c 是导航或地图语义分析等应用的前提
  • Git应用详解第十讲:Git子库:submodule与subtree

    https www cnblogs com AhuntSun blog p 12736934 html 前言 前情提要 xff1a Git应用详解第九讲 xff1a Git cherry pick与Git rebase 一个中大型项目往往会
  • 单片机串口通信程序

    本文总结了两种比较简单的关于串口发送接收的程序 xff0c 以下是步骤 xff1a 定义数据 xff1a unsigned char idata URX 10 61 0 串口接收数组 unsigned char idata URX Num
  • Linux当中的压栈和出栈指令以及跳转指令详细教程

    1 跳压栈出栈指令 xff1a 我们通常会在 A 函数中调用 B 函数 xff0c 当 B 函数执行完以后再回到 A 函数继续执行 要想 再跳回 A 函数以后代码能够接着正常运行 xff0c 那就必须在跳到 B 函数之前将当前处理器状态保存
  • MySQL5.7版本在Ubuntu(WSL环境)系统安装

    课程中配置的WSL环境是最新的Ubuntu22 04版本 xff0c 这个版本的软件商店内置的MySQL是8 0版本 所以我们需要额外的步骤才可以安装5 7版本的MySQL 安装操作需root权限 xff0c 你可以 xff1a 通过 su
  • 动态库静态库的区别

    1 制作过程 静态库 xff1a 生成 o文件后 ar rcs o libxxx a 动态库 xff1a 生成 o文件时 xff0c 静态库是 c选项 xff0c 而动态库是 fpic FPIC xff0c 因为动态库需要生成与位置无关的代
  • 怎么把PWM信号转为模拟量

    有一个测量位置变化的位置传感器 xff0c 用万用表电压档测量传感器的输出信号 xff0c 结果显示的是模拟量信号 xff0c 即位置和信号输出大小呈线性关系 但是 xff0c 用示波器 xff08 Picoscope 4227 xff09
  • STM32环形串口队列程序 大数据串口收发 实时不丢包 串口程序平常产品开发中编写或移植的程序并亲自测试通过,均为工程文件格式,可直接编译使用

    STM32环形串口队列程序 大数据串口收发 实时不丢包 串口程序平常产品开发中编写或移植的程序并亲自测试通过 xff0c 均为工程文件格式 xff0c 可直接编译使用 该程序为大数据量吞吐的串口收发例程 xff0c 中断接收 xff0c 边
  • C语言中的函数返回值、return用法、return 0详解

    1 函数返回值 定义 xff1a 函数的返回值是指函数被调用之后 xff0c 执行函数体中的代码所得到的结果 xff0c 这个结果通过return语句返回 没有返回值的函数为空类型 xff0c 用void表示 一旦函数的返回值类型被定义为
  • TCP协议

    TCP xff08 Transmission Control Protocol xff09 是面向连接的可靠的通讯协议 TCP需要经过三次握手建立连接 xff0c 并在断开时通过四次挥手释放连接 TCP通过应答确认 超时重传 xff08 R
  • UART&RS232&RS485的区别

    UART RS232 RS485在串口通信中 xff0c 主要区别是电平的不同 xff0c 其中UART通常使用TTL电平 TTL TTL全名是晶体管 晶体管逻辑集成电路 Transistor Transistor Logic 输入高电平最
  • 思岚雷达rplidar S1配置调试全纪录

    耗时10天 xff0c 终于从零开始用QT在Ubuntu系统下完成了一个雷达避障系统的设计 xff0c 这文章的主要目的是将配置的流程和遇到的问题记录下来 xff0c 以供自己以后遇到一样的问题时可以有个参考 一 思岚雷达的配置 1 配置的
  • 学习 C++ 到底有什么好处?

    学C 43 43 本身是教不会你编程的 你需要主动的 不断的扩展自己的知识领域 写一个学生管理系统是一个很好的开端 xff1b 但接下来 xff0c 你还需要学习更多 举例来说 xff0c 图形界面 究竟是怎么一回事呢 xff1f 我们知道
  • c++中的二分查找算法

    二分查找普通模式 模板公式 xff1a while l lt 61 r mid 61 l 43 r 2 l 61 mid 43 1 else r 61 mid 1 二分查找特殊情况1 xff1a 000011111求第一个1 while l
  • liunx使用math.h头文件报错解决办法

    在liunx操作系统中 xff0c 编译的时候用到了math h或cmath头文件时 xff0c 一定要主动连接静态库 比如在vim中 xff0c 给编译的文件名后加 lm 否则会报错误
  • 基于AlexNet卷积神经网络的手写体数字倾斜校正系统研究-附Matlab代码

    目 录 一 引言 二 AlexNet 网络 三 实验验证 3 1 实验数据集 3 2 数据训练 3 3 手写体倾斜数字校正结果 四 参考文献 五 Matlab代码获取 一 引言 手写体数字识别是光学字符识别 Optical Characte
  • Jetson Nano 4GB 要怎么供电? Jetson Nano 2GB呢?

    Jetson Nano 4GB 常使用的电源连接方式有两种 xff1a 1 DC Power Jack 5 5 2 1mm 5V 4A xff0c 需使用跳帽将脚位 J48 短路 图一红框处 xff0c 电源连接方式请参照图一蓝框处 若一切
  • 毕业设计 基于单片机的导盲拐杖设计(源码+硬件+论文)

    文章目录 0 前言1 主要功能2 硬件设计 原理图 3 核心软件设计4 实现效果5 最后 0 前言 x1f525 这两年开始毕业设计和毕业答辩的要求和难度不断提升 xff0c 传统的毕设题目缺少创新和亮点 xff0c 往往达不到毕业答辩的要
  • 毕业设计 基于stm32与openmv的目标跟踪系统

    文章目录 0 前言课题简介设计框架3 硬件设计4 软件设计 对被测物体的识别 判断被测物体所在区域 5 最后 0 前言 x1f525 这两年开始毕业设计和毕业答辩的要求和难度不断提升 xff0c 传统的毕设题目缺少创新和亮点 xff0c 往

随机推荐

  • Qt中的TCP通信

    一 TCP的特点 TCP xff08 传输控制协议 xff09 是一种面向连接的 xff0c 可靠的 xff0c 基于字节流的传输层通信协议 二 TCP适合应用的场景 TCP协议适用于要求可靠传输的应用 xff0c 例如文件传输 xff0c
  • SQL常用语句大全

    我们在进行开发工作时 xff0c 对数据库的操作是必不可少的 xff0c 熟练掌握SQL语句可以让我们对数据库的数据处理变得非常简单 xff0c 所以学习SQL语句是非常有必要的 xff0c 下面汇总了一些常用的SQL语句 SQL语句的类型
  • VS配置Qt环境

    前言 Qt程序的开发不仅可以使用原生的Qt Creator xff0c 也可以使用Visual Studio 想使用VS进行Qt程序的开发 xff0c 需要安装Qt的插件 xff0c 下面看详细步骤 下载Qt的插件 地址 xff1a htt
  • STM32官方标准固件库开发与寄存器开发的区别

    一句话概括关系 xff1a 固件库就是函数的集合 xff0c 固件库函数的作用就是 xff1a 向下负责与寄存器直接打交道 xff0c 向上提供用户函数调用的接口 xff08 API xff09 对于STM32这种级别的MCU xff0c
  • CMake获取目录下所有源文件

    1 aux source directory指令 aux source directory lt dir gt lt variable gt 比如 xff1a aux source directory CMAKE CURRENT SOURC
  • Qt制作视频播放器

    前言 该播放器参考了SMPlayer xff0c 实现了其基础功能 xff0c 许多高级功能暂未实现 软件的实现基于Qt xff0c opencv xff0c 多线程以及数据库等相关知识 功能概述 支持本地音视频在线播放 xff0c url
  • Qt中QString与String的互相转换

    前言 Qt中的一些类型是Qt自己封装的 xff0c 例如我们平常常见的String在Qt中就是QString xff0c 但是有时我们调用第三方库时 xff0c 参数要求是String xff0c 这时我们就需要把QString转换成Str
  • Mat与QImage互相转换

    前言 Mat是opencv中的存储图像的容器 xff0c 也是图像像素矩阵 QImage是Qt中存储图片常用的类 Qt和opencv经常配合在一起使用 xff0c 但Qt的函数方法的参数是不接受Mat的 xff0c 所以如果我们想要在Qt中
  • CentOS7下安装libevent

    前言 CentOS7下安装libevent网络库 步骤 创建一个文件夹libevent xff08 方便后期维护管理 xff09 mkdir libevent 官网下载源码包 可以在本机下载然后文件传输 xff0c 也可以直接在linux下
  • Libevent源码深度剖析-张亮(转载)

    https blog csdn net xp178171640 article details 105490027
  • Qt6.4.3编译MySQL驱动

    前段时间电脑坏了重装了操作系统 软件都不能正常运行 大部分都得重装 本来用的Qt5 14 2 想着Qt都出6了 那就用用Qt6吧 Qt6想用mysql数据库也是得自己编译驱动的 但Qt6也是想推广CMake 所以我以前Qt5那一套编译mys
  • keil5中如何在一个项目中新建源文件

    哈喽哈喽 xff0c 昨天在学习如何点灯的时候接触到可以在一个已经建立好的项目中 xff0c 建立一个新的源文件写一个新的代码 这里就总结一下 点开file选择new xff0c 就会发现右边多个栏就说明源文件多了一个 xff0c 这个时候
  • 【Python数据分析】Python模拟登录(一) requests.Session应用

    最近由于某些原因 xff0c 需要用到Python模拟登录网站 xff0c 但是以前对这块并不了解 xff0c 而且目标网站的登录方法较为复杂 xff0c 所以一下卡在这里了 xff0c 于是我决定从简单的模拟开始 xff0c 逐渐深入地研
  • 【VSCode】C++环境配置(小白必看)

    关于VSCode的c 43 43 环境配置 网上教程很多 xff0c 但大多是入门的新手小白难以理解 xff0c 操作不来的 xff0c 作者本人也是捣鼓了很久才配置好c 43 43 运行环境 本篇文章会从头到尾简述 一下vscode配置c
  • at89c51单片机设计的智能空调系统 制冷制热加湿除湿四个工作模式 按键和手机App遥控两种控制方式

    at89c51单片机设计的智能空调系统 制冷制热加湿除湿四个工作模式 按键和手机App遥控两种控制方式 半导体制冷片模拟除湿制冷 超声波雾化模块加湿 温湿度传感器检查环境温湿度 LCD液晶屏显示系统工作状态 全套包括实物成品 xff0c 原
  • Java常用类 - String类详解

    Java常用类 String类 创建字符串 xff1a 每个双引号括起来的字符串常量都是String类的一个实例 xff1b 也可以new 连接字符串 xff1a 43 xff1b string1 concat string2 span c
  • 如何利用#将宏定义中的参数插入到字符串中?

    首先明白几个原理 xff1a 在宏定义中 xff0c 如果宏参数为字符串 xff0c 可以把这个字符串放到字符串中 xff0c 但如果宏参数为变量的话就不可以 可以把宏定义中的参数转化为相应的字符串 xff0c 这时就可以把这个参数放到字符
  • ssmJavaEE无人机数据管理系统 毕业设计源码111022

    ssm无人机数据管理系统 摘 要 随着互联网趋势的到来 xff0c 各行各业都在考虑利用互联网将自己推广出去 xff0c 最好方式就是建立自己的互联网系统 xff0c 并对其进行维护和管理 在现实运用中 xff0c 应用软件的工作规则和开发
  • 【C语言】字符串函数strcat即自主实现

    目录 一 strcat函数 二 自主实现strcat 一 strcat函数 1 功能 xff1a 连接字符串 将源字符串的副本追加到目标字符串 目标中的终止空字符被源的第一个字符覆盖 xff0c 并在目标中两者的连接形成的新字符串的末尾包含
  • 2023版Postman接口测试使用全指南(原来使用 Postman测试API接口如此简单)

    下面是一篇详细介绍postman接口测试的文章 xff0c 如果文章内容不太明白的话 xff0c 我建议看看视频版本 xff0c 更加清洗 xff0c 更加直观 xff01 最详细的postman接口测试实战教程 哔哩哔哩 bilibili