测试项目(三):在后端解决跨域问题
好家伙,
1.跨域问题
前端的端口为:localhost:8080/#/
后端请求数据端口为:localhost:8011/mydb/getUsers
直接启动项目后,会发现报错
出现了跨域问题
1.1.为什么会产生跨域问题?
答:为了安全,
为什么浏览器不能跨域 - AlvinWei - 博客园 (cnblogs.com)
来个通俗的例子:
原本你一个函数:付款给www.zhifubao.com
你这个网页的服务器就是 www.zhifubao.com
但是被人篡改成了 付款给www.pingduoduo.com
然后钱就莫得了,
当然不止如此,
当然还有很多数据安全之类的问题
2.那么我们如何解决?
在前端,后端,服务器都能解决这个问题,
前端多数是不安全的,
所以我们在后端解决
来,在后端项目中添加CrosConfig类
CrosConfig类代码如下:
package com.example.demo2.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
public class CrosConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedHeaders("*")
.allowedMethods("*")
.maxAge(1800)
.allowedOrigins("*");
}
}
重新启动后端,就可以解决了