springboot vue 登陆发送请求(跨域问题)02

来源:互联网 发布:linux格式化目录 编辑:程序博客网 时间:2024/06/01 08:00

1.前后端分离之间进行通讯首先要进行跨域请求,以前的做法就是写个过滤器来操作,还有就是nginx代理了。
现在用vue和springboot都有新的方式
第一种
vue2 本身也支持跨域,开发过程中支持这个,方便
第二种
springboot 简单一个类就可以支持
第三种
生产环境用nginx就不用说了,必须的。像什么复杂的代理请求和负载等等都可以
先弄第一种
这里写图片描述
引入resource
这里写图片描述
在App.vue 加入请求方法
methods: {
getData () {

  var that = this.$http.get('api/sysuser/list')            .then(function (response) {              console.log(response.data)              console.log(this)              that.serverData = response.data            })            .catch(function (error) {              console.log(error)            })}

}
这里写图片描述
2.第二种 springboot 配置也可以
去掉之前vue代理请求就提示跨域问题了,我们先删除代理运行看看
这里写图片描述
访问地址修改成
这里写图片描述
再次访问就有跨域问题
这里写图片描述
接下来在项目种加入CorsConfig类,如图
这里写图片描述

@Configurationpublic class CorsConfig  extends WebMvcConfigurerAdapter{      @Override          public void addCorsMappings(CorsRegistry registry) {             System.out.println("----------------------");            registry.addMapping("/**")                      .allowedOrigins("*")                      .allowCredentials(true)                      .allowedMethods("GET", "POST", "DELETE", "PUT")                      .maxAge(3600);          }  }

重启项目刷新页面,跨域问题就解决了
这里写图片描述
第三种nginx跨域解决问题后面部署服务器的时候再一起学习

原创粉丝点击