乐趣区

springboot-restful接口-如何接受前端的PUT和DELETE请求

最近项目组有人问我,“springboot 怎么接受不到前端提交的 PUT 和 DELETE 请求?”
于是有了这篇文章,本篇文章主要解决两个问题:

  • js 好像只能提交 GET、POST 请求耶?怎么提交 PUT DELETE 请求?
  • 如何将前端提交的 PUT、DELETE 请求与 server 端对接上?

问题 1 解决方案:
在 ajax 中发送 POST 请求,带上_method 参数,_method 值为 PUT 或者 DELETE
实例:

$.ajax({
    url:"",
    type:"POST",
    data:{_method:"PUT"},
    success:function(data){...}
 })

问题 2 解决方案:
配置 HiddenHttpMethodFilter
实例:

@Configuration
public class HttpRequestConfig {
    @Bean
    public HiddenHttpMethodFilter hiddenHttpMethodFilter() {HiddenHttpMethodFilter hiddenHttpMethodFilter = new HiddenHttpMethodFilter();
        hiddenHttpMethodFilter.setBeanName("HiddenHttpMethodFilter");
        hiddenHttpMethodFilter.setMethodParam("_method");
        return hiddenHttpMethodFilter;
    }
}
退出移动版