架设网站需要什么,软件技术专升本,邯郸建设企业网站,桂林象鼻山附近酒店推荐不知怎么的#xff0c;项目还在开发阶段#xff0c;之前还好好的#xff0c;玩儿了两天再一打开发现页面无法显示数据了#xff0c;报错如下#xff1a; 我以为是后端出问题了#xff0c;但是后端控制台无报错#xff0c;又用postman测试了一下#xff0c;可以获取到数… 不知怎么的项目还在开发阶段之前还好好的玩儿了两天再一打开发现页面无法显示数据了报错如下 我以为是后端出问题了但是后端控制台无报错又用postman测试了一下可以获取到数据。
后来检查了一下请求发现是跨域请求换端口的问题前端是5137后端是8080之前是可以的一直没问题
server: {port: 5173,proxy:{/api:{target:http://localhost:8080,//后端接口的域名 changeOrigin:true,//是否改变源rewrite:(path)path.replace(/^\/api/,),//重写路径,去掉路径中的/api}}} 就是换源然后重写路径嘛之前一直没问题后来查了资料有一种说法是前端做了处理还不够后端也要设置接受这种处理。解决方法如下
在后端的每一个controller添加CrossOrigin注解
CrossOrigin 是 Spring Framework 提供的一个注解用于解决跨域资源共享CORS的问题。当您在后端服务中使用这个注解时它允许您的后端服务接受来自不同源即不同域名、协议或端口的请求。
为什么需要 CrossOrigin 注解
在Web开发中出于安全考虑浏览器默认会限制从一个源发起的脚本对不同源的资源的访问。这称为同源策略Same-Origin Policy。如果后端服务和前端应用不在同一个源上那么直接发起请求会遭到浏览器的阻止从而导致跨域请求失败。
CrossOrigin 注解的作用 允许跨域请求使用 CrossOrigin 注解可以告诉Spring框架该接口允许跨域请求。这意味着来自不同源的请求将被接受。 配置CORS响应头CrossOrigin 注解会自动配置响应头如 Access-Control-Allow-Origin以允许跨域请求。您可以在注解中指定允许哪些源访问您的后端服务。 简化配置使用 CrossOrigin 注解可以简化跨域请求的配置无需手动设置响应头注解会自动处理这些细节。