Spring Boot 跨域请求配置

问题描述:给官网加一个新闻资讯,官网和后台的服务器不在一起,官网请求后台使用ajax 方式请求,提示跨域无法请求;

问题情况:

后台使用  Spring Boot 拦截器 来拦截处理http的请求(框架使用pearadmin[Pear Admin 官网])

 后台访问地址: http://127.0.0.1:8080/

官网访问地址 :http://127.0.0.1/

官网前端:html jquery,使用ajax请求 get 和post 方式都可以 

$.ajax({
				type: "GET",
				url: 'http://127.0.0.1:8080/api/news/getNewslist',//getNewslist,
				data: {},
				success: function (data) {}
});

浏览器报错信息:Access to XMLHttpRequest at 'http://127.0.0.1:8080/api/news/getNewslist' from origin 'http://127.0.0.1' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

 

 

注解:http://127.0.0.1:8080/api/news/getNewslist和htttp://127.0.0.1 跨域无法实现

解决办法

重写拦截器 addCorsMappings 方法
@Configuration
public class WxloginConfig implements WebMvcConfigurer {
    
    //其他配置

    /**
     * 跨域请求配置 * @param registry 跨域请求
     * 参考来源:码农网
     * 参考链接:https://www.codercto.com/a/57818.html
     */
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
            .allowedOrigins("*")
            .allowedMethods("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS")
            .allowCredentials(false).maxAge(3600);
    }
}

响应结果:对比上图

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值