服务器不能DELETE和PUT
创始人
2025-01-17 22:04:06
0

问题描述:前端VUE、后端JAVA,代码放在本地可以完美运行,放在服务器外网不能运行delete和put,get和post不能运行
经过摸索总结,在不改变原有RESTful的情况下,亲身实验,得到两种解决办法:
一:改前端配置和nginx(后台是经过nginx代理)

前端http配置:

1.put和delete请求改为post请求
2.put请求添加请求头:X-Http-Method-Override: PUT;
delete请求添加请求头:X-Http-Method-Override: DELETE;

nginx配置:

在server里面添加如下代码

server { 	... 	set $method $request_method; 	if ($http_X_HTTP_Method_Override ~* 'PUT|DELETE') { 	    set $method $http_X_HTTP_Method_Override; 	} 	proxy_method $method; 	... } 

重启nginx,完毕!

二:改前端配置和后端配置(后台不经过nginx,直接访问)

前端http配置:

1.put和delete请求改为post请求
2.put请求添加请求头:X-Http-Method-Override: PUT;
delete请求添加请求头:X-Http-Method-Override: DELETE;

后端http配置:

新建一个过滤器类 ChangeHttpMethodFilter

import org.springframework.core.annotation.Order; import org.springframework.http.HttpMethod; import org.springframework.stereotype.Component;  import javax.servlet.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequestWrapper; import java.io.IOException;  /**  * 改变请求头的过滤器  *  * @author xu  * 2024/3/28 12:08  */ @Order(1)// 执行顺序最小 @Component public class ChangeHttpMethodFilter implements Filter {     @Override     public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {         HttpServletRequest httpServletRequest = (HttpServletRequest) servletRequest;         String method = httpServletRequest.getHeader("X-Http-Method-Override");         // 如果修改和删除需要改变         if(HttpMethod.DELETE.name().equals(method) || HttpMethod.PUT.name().equals(method)){             HttpServletRequestWrapper requestWrapper = new HttpServletRequestWrapper(httpServletRequest) {                 @Override                 public String getMethod() {                     return method.toUpperCase();                 }             };             filterChain.doFilter(requestWrapper, servletResponse);         }else {             filterChain.doFilter(servletRequest, servletResponse);         }     } } 

重启,完毕!

相关内容

热门资讯

太夸张了!越乡游绍兴挂,wep... 越乡游绍兴挂 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由: 1、软...
太坑了开挂!福建众娱辅助透视系... 太坑了开挂!福建众娱辅助透视系统,小闲巴渝辅助(发现一款辅助开挂下载);福建众娱辅助透视系统最新版本...
太离谱了!奇迹掌趣辅助,wep... 太离谱了!奇迹掌趣辅助,wepoker高级辅助(透视)开挂辅助平台(有挂方式)>>您好:软件加136...
太嚣张了透视!新道游房间,新道... 太嚣张了透视!新道游房间,新道游辅助器免费版(最新技巧开挂辅助脚本);超受欢迎的新道游辅助器免费版稳...
太离谱了!jj斗地主有透视吗,... jj斗地主有透视吗 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由: ...
太无语了辅助!hhpoker免... 太无语了辅助!hhpoker免费辅助器,微友三代辅助(揭秘几款辅助开挂插件);1、很好的hhpoke...
太夸张了!吉祥填大坑插件,so... 吉祥填大坑插件 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由: 1、...
太坑了辅助!拱趴大菠萝辅助工具... 太坑了辅助!拱趴大菠萝辅助工具,禅游游戏辅助脚本(盘点一款辅助开挂神器)相信很多朋友都在电脑上玩过拱...
太实锤了!创思维有挂吗,wep... 太实锤了!创思维有挂吗,wepoker正确养号方法(透视)开挂辅助工具(有挂辅助) >>您好:软件加...
太嚣张了透视!边锋小程序透视器... 太嚣张了透视!边锋小程序透视器,情怀辅助哪里可以装(我来教大家开挂辅助下载),情怀辅助哪里可以装是用...