restful API
REST 是一种设计风格不是标准,REST 风格的 API 就是 RESTful API
增删该查对应请求方式 POST、DELETE、PUT、GET
URI 命名,在 URI 中不能出现动词,因为在 REST 中只有资源的概念
/资源名称
/资源名称/{资源ID}
/资源名称/{资源ID}
/资源名称/{资源ID}/子资源名称
/资源名称/{资源ID}/子资源名称/{子资源ID}
示例:
POST /users 增加一个用户
GET /users 获取用户列表
GET /users/1001 获取编号为 1001 的用户信息
PUT /users/1001 修改编号为 1001 的用户信息
DELETE /users/1001 删除编号为 1001 的用户信息
GET /users/1001/detail 获取编号为 1001 的用户的详细信息(在另一张表里)
POST /authorization 登录
DELETE /authorization 退出
接收参数
1,对于地址栏参数使用 @PathVariable 注解
2,GET 请求参数使用 @RequestParam 注解
3,POST、DELETE、PUT 请求参数使用 @RequestBody 注解
接收 GET 请求示例
// 获取主账号列表 @GetMapping(value = "/{version}/users") // rest 接口地址 public String getMainAccount(@PathVariable(value = "version") String version, // 地址栏参数 version @RequestParam(required = false) Integer currentPage, // 请求参数 currentPage @RequestParam(required = false) Integer pageSize) // 请求参数 pageSize { // 业务处理 }
接收 POST 请求示例
@PostMapping(value = "/{version}/users") public String createMainAccount(@PathVariable(value = "version") String version, @RequestBody String params) { // 解析请求参数 JSONObject jsonObject = JSONObject.parseObject(params); String userName = jsonObject.getString("suerName"); String userGender = jsonObject.getString("userGender"); }
注意:
1,JSON.stringify() 使用
GET 请求不要使用,非GET请求要使用
2,dataType 和 contentType 别忘记了
dataType: "json",
contentType: "application/json; charset=utf-8",