测试项目(三):在后端解决跨域问题

好家伙,

 

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("*");
    }
}

 

重新启动后端,就可以解决了

 

posted @ 2022-10-14 11:45  养肥胖虎  阅读(231)  评论(0编辑  收藏  举报