Web项目请求方式总结

1.Get Path方式:参数放地址栏(只带value值的),适用于get请求参数比较少,参数类型是基本类型的情况。

后台代码如下(参数前面加@PathVariable注解):

@GetMapping("/getForPath/{id}")
public String getForPath(@PathVariable Long id) {
    return "id: " + id;
}

前端请求方式为(直接在路径后面接参数值):

http://127.0.0.1:8080/1t6/requestType/getForPath/666

postman示例:

2.Get Params方式1:请求参数放params上,后端接收用单个类型接收,适用于get请求参数比较少,参数类型是基本类型的情况。

后台代码如下(参数前面加@RequestParam注解):

@GetMapping("/getForParams1")
public String getForParams1(@RequestParam Long id, @RequestParam PlanTypeEnum planType) {
    return "id: " + id + ", planType: " + planType;
}

前端请求方式为(在路径后面接参数key=value):

http://127.0.0.1:8080/1t6/requestType/getForParams1?id=666&planType=TRAIN

postman示例:

3.Get Params方式2:请求参数放params上,后端接收用封装对象接收,适用于get请求参数比较多,参数类型是有多种(可以处理时间类型加注解等)的情况。推荐

后台代码如下(参数封装对象前什么注解都不用加):

@GetMapping("/getForParams2")
public String getForParams2(RequestTypeVo vo) {
    return "id: " + vo.getId() + ", planType: " + vo.getPlanType()+ ", time" + vo.getTime();
}
@Data
public class RequestTypeVo {

    private Long id;

    // 枚举
    private PlanTypeEnum planType;

    // 时间
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime time;

}

前端请求方式为(在路径后面接参数key=value):

http://127.0.0.1:8080/1t6/requestType/getForParams2?id=666&planType=TRAIN&time=2024-07-16 18:18:18

postman示例:

4.Post Body方式:请求参数放body上(这里用JSON格式为例),后端接收用封装对象接收,适用于post请求参数比较多,参数类型是有多种(可以处理时间类型加注解等)的情况。推荐

后台代码如下(参数封装对象前面加@RequestBody注解):

@PostMapping("/postForBody")
public String postForBody(@RequestBody RequestTypeVo vo) {
    return "id: " + vo.getId() + ", planType: " + vo.getPlanType() + ", time" + vo.getTime();
}
@Data
public class RequestTypeVo {

    private Long id;

    // 枚举
    private PlanTypeEnum planType;

    // 时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime time;

}

前端请求方式为(在body里面放数据):

{
    "id":666,
    "planType":"TRAIN",
    "time":"2024-07-16 18:18:18"
}

postman示例:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值