- vue项目部署到线上服务器,使用nginx成功启动页面都能正常访问。
- springboot的后台服务放到了同一个服务器,也是正常启动,全部是RESTful形式。
- 线下的VUE项目连接线上后台服务一切正常,不是后台设置的问题。
问题:
线上vue向后台发送delete请求的时候,变成了“Request Method: OPTIONS”
百度了各种nginx的配置都不能用。
有没有遇见过同样问题并解决了朋友,帮忙给个有效的解决方案!
问题:
线上vue向后台发送delete请求的时候,变成了“Request Method: OPTIONS”
百度了各种nginx的配置都不能用。
有没有遇见过同样问题并解决了朋友,帮忙给个有效的解决方案!
问题解决了,虽然还没搞清楚原理为何,不是nginx的配置问题。
在后台`
doFilterInternal
response.setHeader("Access-Control-Allow-Headers", "X-Requested-With, Accept, Content-Type,Authorization");
// response.setHeader("Access-Control-Allow-Methods", "GET, POST,OPTIONS");
response.setHeader("Access-Control-Allow-Methods", "GET, POST,OPTIONS, PUT, DELETE");
String origin = request.getHeader("Origin");
response.setHeader("Access-Control-Allow-Origin", "*");
15 回答8.2k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答4.8k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
4 回答1.9k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
hi, 你好
在发送DELETE请求之前,浏览器会先发送OPTIONS请求给后端以检测是否允许客户端发送DELETE请求。所以你只需要在SpringBoot中处理一下对应的OPTIONS请求即可,应该不是nginx的关系。
跨域资源共享 CORS 详解
options预检请求- HTTP | MDN