RESTful设计风格

RESTful

前后端分离开发的项目中,前后端之间是接口进行请求和响应,后端向前端提供请求就要对外暴露一个URL;URL的设计不能是随意的,需要遵从一定的设计规范--RESTful

RESTful是一种Web api的标准,也就是一种url设计风格/规范

RESTful是用请求方式来区分你的操作,而不是用路径

  • 每个URL请求路径代表服务器上的唯一资源

 传统的URL设计:
  http://localhost:8080/goods/delete?goodsId=1 商品1
  http://localhost:8080/goods/delete?goodsId=2 商品2
 RESTful设计:
  http://localhost:8080/goods/delete/1 商品1
  http://localhost:8080/goods/delete/2 商品2
 @RequestMapping("/delete/{gid}")
 public ResultVO deleteGoods(@PathVariable("gid") int goodsId){
  System.out.println("-----"+goodsId);
  return new ResultVO(10000,"delete success",null);
 }
  • 使用不同的请求方式表示不同的操作

SpringMVC对RESTful风格提供了很好的支持,在我们定义一个接口的URL时,可以通过@RequestMapping(value="/{id}",method=RequestMethod.GET)形式指定请求方式,也可使用特定请求方式的注解设定URL

@PostMapping("/add")

@DeleteMapping("/{id}")

@PutMapping("/{id}")

@GetMapping("/{id}")

  • post 添加

  • get 查询

  • put 修改

  • delete 删除

  • option 预检

 根据ID删除⼀个商品:
 //http://localhost:8080/goods/1 [delete]
 @RequestMapping(value = "/{id}",method = RequestMethod.DELETE)
 public ResultVO deleteGoods(@PathVariable("id") int goodsId){
  System.out.println("-----"+goodsId);
  return new ResultVO(10000,"delete success",null);
 }
 根据ID查询⼀个商品:
 //http://localhost:8080/goods/1 [get]
 @RequestMapping(value = "/{id}",method = RequestMethod.GET)
 public ResultVO getGoods(@PathVariable("id") int goodsId){
  return null;
 }
  • 接口响应的资源表现形式采用JSON(或者XML)

  • 在控制类或者每个接口方法添加@ResponseBody注解将返回的对象格式为json

  • 或者直接在控制器类使用@RestController注解声明控制器

  • 前端(Android\ios\pc)通过无状态的HTTP协议与后端接口进行交互

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值