postman测试各种请求

总结:

1)后端是post请求和put请求,并且前端JS传来的参数是JSON格式的对象时,必须使用@RequestBody注解接收参数;后端是否使用@RequestBody注解,直接决定postman测试方法是否相同;

2) post请求和put请求中,当使用@RequestBody注解时,URL不用参数(Params)拼接的,否则会报错"Required request body is missing"[见最后一张图],要选择Body→raw→JSON,然后采用如下面的传参方法;

3) get请求,delete请求则都是选择Params的方式,参数拼接在URL地址栏中即可;put请求,post请求只要前端传来的不是JSON格式的对象时,应该也是选择Params的方式吧(例如下面put请求的更新状态)?

4) 当controller中采用restful风格时,URL传参方式要与之对应,如http://localhost:8091/user/status/6/1 (6代表id,1代表状态修改).

一.post请求

1.新增用户

2. 用户登录

 idea控制台对应生成的SQL语句:

二. get请求(分页查询用户列表)

三. delete请求(删除用户)

 四.put请求(更新)

1.更新状态(主要学习restful风格的传参)

如何不按照restful风格传参就会报错哦: 

2.更新用户(根据id更新,可以更新username/email/password/status等字段)

注意:由于没有写@RequestBody注解,所以虽然用postman测试没问题,但是JS中发Ajax请求后导致后端控制台生成的sql语句是这样的(updated为MP的自动填充功能字段):

很显然,缺少了需要更新的字段,故controller中是@PutMapping注解并且前端传过来的是JSON字符串格式的对象时(见下图),参数前面务必加上@RequestBody注解,这样才能生成正常的sql:

说明:上面1中的"更新状态",同样是put请求,但是由于前端传来的参数不是JSON格式,所以没有必要用@RequestBody注解。

 

 以下是不加@RequestBody注解时,用postman的测试(极不推荐,因为HTML时是必须加该注解的):

 加了@RequestBody注解时,测试便和上面post请求一样了,如下:(推荐)

五. post请求传参方式错误时的报错信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值