Postman(接口测试工具),什么是Postman接口

目录

一.基本介绍

  • Postman 是什么
  • Postman 快速入门
  • 快速入门需求说明

二.Postman 完成 Controller 层测试

  • 需要的代码:
    • Java类
    • request.jsp
    • success.jsp
  • 1. 完成请求
  • 2. 完成请求
  • 3. 完成请求
  • 4. 完成请求
  • 5. 完成请求

三.发送join

目录

一.基本介绍

Postman 是什么

1.Postman 是一款功能超级强大的用于发送 HTTP 请求的 测试工具
2. 做 WEB 页面开发和测试的人员常用工具
3. 创建和发送任何的 HTTP 请求 (Get/Post/Put/Delete...)

快速入门需求说明

2.1快速入门需求说明
要求 : 使用 Postman 向 http://www.baidu.com 发出 get 请求,得到返回的 html 格式 数据
要求 : 使用 Postman 向 http://www.sohu.com 发出 get 请求,得到返回的 html 格式数 据

1.首先需要我们去注册Postman 一个账号: 这个比较简单,输入邮箱,添加账号名和密码即可。

2.登录

3.进入Postman

4. 创建 Http Request , 如果你已经创建过,会直接进入 Workspace, 这里灵活处理即可

5. 到此,我们就完成快速入门案例,后面可以创建新的 Collection 或者 新的 Http

Request

 二.Postman 完成 Controller 层测试

需要的代码:

Java类

package com.hong.web;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;/*** Created with IntelliJ IDEA.** @Author: 海绵hong* @Date: 2022/10/26/10:31* @Description:*/
@RequestMapping(value = "/user")
@Controller //UserHandler就是一个处理器/控制器,注入到容器
public class UserHandler {/*** 解读* 1. method=RequestMethod.POST: 表示请求buy目标方法必须是 post* 2. RequestMethod 四个常用选项 POST, GET, PUT, DELETE[后面我们会详解]* 3. SpringMVC 控制器默认支持GET和POST两种方式* <p>* 4. buy()方法请求的url: http://ip:port/工程路径/user/buy* 5. @PostMapping(value = "/buy")等价 @RequestMapping(value = "/buy",method = RequestMethod.POST)* @return*///@RequestMapping(value = "/buy",method = RequestMethod.POST)@PostMapping(value = "/buy")public String buy() {System.out.println("购买商品~");return "success";}/*** 解读* 1. params="bookId" 表示请求该目标方法时,必须给一个bookId参数, 值没有限定* 2. search(String bookId): 表示请求目标方法时, 携带的bookId=100, 就会将请求携带的 bookId对应的* 值 100, 赋给 String bookId* 3. params = "bookId=100" 表示必须给一个bookId参数, 而且值必须是100** @return*/@RequestMapping(value = "/find", params = "bookId=100", method = RequestMethod.GET)public String search(String bookId) {System.out.println("查询书籍 bookId= " + bookId);return "success";}/*** 要求: 可以配置  /user/message/aa, /user/message/aa/bb/cc* 1. @RequestMapping(value = "/message/**") /** 可以匹配多层路径*/@RequestMapping(value = "/message/**")public String im() {System.out.println("发送消息");return "success";}//要求: 我们希望目标方法获取到 username 和 userid, value="/xx/{username}" - @PathVariable("username")..//前端页面: <a href="user/reg/kristina/300">占位符的演示</a>//(value = "/reg/{username}/{userid}"): 表示kristina->{username} 300=>{userid}@RequestMapping(value = "/reg/{username}/{userid}")public String register(@PathVariable("username") String name,@PathVariable("userid") String id) {System.out.println("接收到参数--" + "username= " + name + "--" + "usreid= " + id);return "success";}@RequestMapping(value = "/hi")public String hi() {System.out.println("hi");return "success";}//@RequestMapping(value = "/hi")//public String hi2() {//    System.out.println("hi");//    return "success";//}/*** hello3(String email): 如果我们的请求参数有 email=xx, 就会将传递的值,赋给String email* ,要求名称保持一致, 如果不一致,那么接收不到数据, 而是null* @param email* @return*/@GetMapping(value = "/hello3")public String hello3(String email) {System.out.println("hello3 " + email);return "success";}
}

request.jsp

<%--User:海绵hongDate: 2022/10/26Time: 10:33--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>购买商品</title>
</head>
<body>
<h1>购买商品</h1>
<%--解读
1. action="user/buy" 对应 url http://localhost:8080/工程路径/user/buy
--%>
<form action="user/buy" method="post">购买人:<input type="text" name="username"><br>够买量:<input type="text" name="nums"><br><input type="submit" value="购买">
</form><hr><h1>演示params的使用</h1>
<a href="user/find?bookId=200">查询书籍</a><hr><h1>演示Ant风格的请求资源方式 </h1>
<a href="user/message/aa">发送消息1</a><br>
<a href="user/message/aa/bb/cc">发送消息2</a><br><hr><h1>占位符的演示</h1>
<a href="user/reg/kristina/300">占位符的演示</a><h1>电脑信息</h1><form action="computer/info" method="post">品牌:<input type="text" name="brand"><br>价格:<input type="text" name="price"><br>数量:<input type="text" name="nums"><br><input type="submit" value="提交">
</form></body>
</html>

success.jsp

<%--User:海绵hongDate: 2022/10/26Time: 10:34--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>操作成功</title>
</head>
<body>
<h1>恭喜, 操作成功~</h1>
</body>
</html>

1. 完成请求

@RequestMapping(value = "/user")
@Controller //UserHandler 就是一个处理器/控制器,注入到容器
public class UserHandler {  @RequestMapping(value = "/buy",method = RequestMethod.GET)public String buy() {System.out.println("购买商品");return "success";}
}

-- 使用 Postman 测试 Controller 的方法的步骤
1) 确定请求的地址 url http://localhost:8080/springMVC/user/buy
2) 请求的方式 -Post
3) 确定请求的参数 / 数据 - 无
4) 确定 Headers 有没有特殊的指定 - 对 http 协议有了解

2. 完成请求

@RequestMapping(value = "/user")
@Controller //UserHandler 就是一个处理器/控制器,注入到容器
@RequestMapping(value
=
"/find", params
=
"bookId=100", method
=
RequestMethod.GET)
public String search(String bookId) {
System.out.println("查询书籍 bookId= " + bookId);
return "success";
}
}

1) 确定请求的地址 url http://localhost:8080/springMVC/user/find
2) 请求的方式 -Get
3) 确定请求的参数 / 数据 - bookId=100
4) 确定 Headers 有没有特殊的指定 - 无

3. 完成请求

@RequestMapping(value = "/user")
@Controller //UserHandler 就是一个处理器/控制器,注入到容器
@RequestMapping(value = "/message/**")
public String im() {
System.out.println("发送消息");
return "success";
}
}

1) 确定请求的地址 url http://localhost:8080/springMVC/user/message/aa/bb/cc
2) 请求的方式 -Get/Post
3) 确定请求的参数 / 数据 - 无
4) 确定 Headers 有没有特殊的指定 - 无

4. 完成请求

@RequestMapping(value = "/user")
@Controller //UserHandler 就是一个处理器/控制器,注入到容器
@RequestMapping(value = "/reg/{username}/{userid}")
public String register(@PathVariable("username") String name,
@PathVariable("userid") String id) {
System.out.println("接收到参数--" + "username= " + name + "--" + "usreid= " + id);
return "success";
}

1) 确定请求的地址 url http://localhost:8080/springMVC/user/reg/hong/1000
2) 请求的方式 -Get/Post
3) 确定请求的参数 / 数据 - 无
4) 确定 Headers 有没有特殊的指定 - 无

5. 完成请求

@RequestMapping(value = "/user")
@Controller //UserHandler 就是一个处理器/控制器,注入到容器
@GetMapping(value = "/hello3")
public String hello3(String email) {
System.out.println("hello3 " + email);
return "success";
}

1) 确定请求的地址 url http://localhost:8080/springMVC/user/hello3
2) 请求的方式 -Get
3) 确定请求的参数 / 数据 - email=xx@sohu.com
4) 确定 Headers 有没有特殊的指定 - 无

三.发送join

1. 创建 对应的 Http Request ,放到新的 Collection

2. 在 Headers 选项页,增加 Content-Type appliction/json

3. 因为是 Post 请求,在 Body 选项页填写 Json 数据/Furn 数据 

4. 点击 Send ,如果成功,会看到返回 success 的信息查看 Mysql ,会看到增加新的记录 

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

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

相关文章

超详细Anconda pytorch cuda cuDNN安装及介绍(李沐老师视频环境)

零、准备知识阶段 ⇲ 显卡驱动、CUDA、cuDNN之间联系以及安装配置 在配置PyTorch的过程中&#xff0c;显卡驱动、CUDA、cuDNN三者之间的关系、作用以及在众多版本中如何搭配一直困扰着我。虽然网上资料很多&#xff0c;但各说其词&#xff0c;即使最终迈过种种坑成功运行&…

idea项目如何上传gitee

1.先创建仓库&#xff08;nonono&#xff01;&#xff01;&#xff01;idea上传会自动创建仓库&#xff01;&#xff01;&#xff01;&#xff01;&#xff09; 2.从gitee上面clone下来&#xff08;nonono&#xff01;&#xff01;&#xff01;&#xff01;这个.git文件也是自动…

Flutter 各种Demo效果合集

Flutter 各种Demo实现效果&#xff1a; github&#xff1a;GitHub - PangHaHa12138/FlutterDemo: Flutter 各种Demo效果合集 1&#xff1a;2种 仿朋友圈 效果,顶部拉伸 和 不拉伸 2&#xff1a;仿抖音上下滑动视频播放 3&#xff1a;视频直播&#xff08;使用的电视台的m3u…

事件分发机制:从OnTouchListener开始,按钮变色的Demo

要彻底弄清楚事件分发机制&#xff0c;先要明白OnTouchListener的作用。 我们看下Android 1.6上&#xff0c;OnTouchListener的代码定义&#xff0c;源码在线地址&#xff1a;Android 1.6 sdk4 View.java 可以看到&#xff0c;OnTouchListener就是View类中的一个public接口&am…

如何读论文

如何读论文 0. 目的 单篇文章从头读到尾&#xff0c;可以&#xff1b; 世界上那么多篇文章&#xff0c; 都这样读&#xff0c; 时间上划不来。 适合你的文章就那么一小撮。 paper 的八股文结构&#xff1a; titleabstractintromethodexpconclusion 1. 第一遍 海选&#…

运用 StringJoiner 高效的拼接字符串

运用 StringJoiner 高效的拼接字符串 package com.zhong.stringdemo;import java.util.ArrayList; import java.util.StringJoiner;public class Test {public static void main(String[] args) {ArrayList<String> s new ArrayList<>();s.add("11");s.…

CEC2013(python):五种算法(OOA、WOA、GWO、DBO、HHO)求解CEC2013(python代码)

一、五种算法简介 1、鱼鹰优化算法OOA 2、鲸鱼优化算法WOA 3、灰狼优化算法GWO 4、蜣螂优化算法DBO 5、哈里斯鹰优化算法HHO 二、5种算法求解CEC2013 &#xff08;1&#xff09;CEC2013简介 参考文献&#xff1a; [1] Liang J J , Qu B Y , Suganthan P N , et al. Pro…

跟着cherno手搓游戏引擎【19】抽象纹理

引入&#xff1a; 导入stb_image: GitHub - nothings/stb: stb single-file public domain libraries for C/C 下载复制stb_image.h的内容&#xff08;8000多行&#xff09;&#xff0c;然后粘到如图位置 stb_image.cpp: #include"ytpch.h" #define STB_IMAGE_IM…

04、全文检索 -- Solr -- 管理 Solr 的 core(使用命令和图形界面创建、删除 core,以及对core 目录下的各文件进行详细介绍)

目录 管理 Solr 的 core创建 Core方式1&#xff1a;solr 命令创建演示&#xff1a;使用 solr 命令创建 Core&#xff1a;演示&#xff1a;命令删除 Core&#xff08;彻底删除&#xff09; 方式2&#xff1a;图形界面创建Web控制台创建CoreWeb控制台删除 Core&#xff08;未彻底…

python使用fabric库

目录 一&#xff1a;介绍 二&#xff1a;远程命令执行 三&#xff1a;文件上传&#xff0c;下载 四&#xff1a;执行多台服务器命令 一&#xff1a;介绍 Fabric是一个Python库&#xff0c;用于简化SSH连接和自动化任务。它提供了一个简单的API来执行远程命令、上传和下载文…

软件工程(最简式总结)

目录 第一章:概述 1.软件危机的表现原因 2.常见的软件开发方法包括&#xff1a; 3.软件工程基本原则 4.软件工程三要素 5.设计模式的分类 6.针对变换型数据流设计步骤 7.针对事务型数据流设计步骤 第二章&#xff1a;软件过程 1.软件生命周期 2.软件过程模型 &…

【牛B得一塌糊涂】窗口归一化技术,改进医学图像的分布外泛化能力

窗口归一化技术&#xff0c;改进医学图像的分布外泛化能力 提出背景WIN、WIN-WIN、无参数归一化、特征级别数据增强如何提升分布外的泛化&#xff1f; 总结子问题1: 医学图像中的局部特征表示不足子问题2: 训练数据与新场景数据分布不一致子问题3: 模型在分布外数据上泛化能力不…