报错 : Request method 'GET' not supported

项目场景

idea + ssm整合 + maven + tomcat8 + JDK1.8 + 查询全部 添加 查询单个功能完成 , 测试查询单个功能

问题描述

访问报错

Request method 'GET' not supported

原因分析

报错提示 : 不支持请求方法'GET'

  1. 查询所有 添加 方法冲突
  2. Rest风格请求参数

解决方案

解决问题用到的知识点 : Rest风格

修改之前所有请求地址 (已解决 , 过于复杂舍弃)

由于请求规范使用Rest风格 , 如果要解决出现的问题 , 需要同时修改多个请求地址 , 过于复杂 , 舍弃此方案

查询单个 请求规范使用Rest风格 (已解决)

由于之前 查询全部 查询单个 功能使用Rest风格 , 而写到 查询单个 时忘记使用Rest规范 , 而直接设置了请求地址 , 导致查询单个无法使用 , 将请求规范样使用Rest风格后bug解决

代码演示 :

@RestController
@RequestMapping("employee")
public class EmployeeController {

    @Autowired
    private EmployeeService employeeService;

    //===查询所有用户=== 
    //修改后 :
    //@GetMapping("findAll")
    //修改前 :
    @GetMapping
    public AxiosResult<PageBean<Employee>> findAll(Integer currentPage, Integer pageSize) {
       ...
    }

    //===添加用户===
    //修改后 : 
    //@PostMapping(insertEmployee)
    //修改前 : 
    @PostMapping
    private AxiosResult<Void> insertEmployee(@RequestBody Employee employee) {
        ...
    }

    //===根据id查询用户===
    //修改前 :
    //@GetMapping("findById")
    //修改后 :
    @GetMapping({id})
    public AxiosResult<Employee> findById(int id) {
      ...
    }

}

总结

请求的规范要统一 , 不要混用

posted @ 2021-06-19 11:04  小_Leo  阅读(8570)  评论(0编辑  收藏  举报