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;
}
}