vue项目部署跨域问题的详细解决过程

 更新时间:2022年05月01日 08:52:50   作者:家家小迷弟  
一般我们的前端Vue项目中都会涉及到跨域的问题,下面这篇文章主要给大家介绍了关于vue项目部署跨域问题的详细解决过程,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

跨域问题在前后端分离项目很常见,至于为什么会跨域,同源策略,百度各种博客都很详细,这里不再介绍,主要记录项目中的各种设置,解决的过程。

首先是后端:

过滤器:

@Configuration
public class GlobalCorsConfig  {

    /**
     * 允许跨域调用的过滤器
     */
    @Bean
    public CorsFilter corsFilter() {
        CorsConfiguration config = new CorsConfiguration();
        //允许所有域名进行跨域调用
        config.addAllowedOriginPattern("*");
       // config.addAllowedOrigin("*");
        //允许跨越发送cookie
        config.setAllowCredentials(true);
        //放行全部原始头信息
        config.addAllowedHeader("*");
        //允许所有请求方法跨域调用
        config.addAllowedMethod("*");
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        source.registerCorsConfiguration("/**", config);
        return new CorsFilter(source);
    }
}

如果setAllowCredentials为true,则config.addAllowedOrigin("*")的参数就不能是*,必须指明,这里直接注释掉,使用addAllowedOriginPattern

Controller层:

路径里包含了web,这个很重要,记住

yml文件:

后端的端口8086,应用上下文路径:/weijianweiAdminApi

再是前端:

dev.env.js中设置BASE_API为/web

在index.js中设置dev里面的proxyTable,这里是在开发过程中,在node.js上实现的一个转发,将请求转发到后端,主要解决了开发过程中的跨域问题。

设置完这些以后,npm run dev,项目在本地可以运行了

开发完成以后,项目打包,放到服务器上:

首先在服务器的nginx的html文件夹中创建文件夹命名为weijianwei

将npm run build 打包生成的文件放在weijianwei中:

修改index里面的assetsPublicPath为weijianwei,对应上面文件夹名称

设置nginx配置文件nginx.conf:

 server {
        listen       8099;      
		server_name  localhost;
		location /weijianweiAdminApi/ {
            proxy_set_header Host $host;
			proxy_set_header  X-Real-IP        $remote_addr;
			proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
			proxy_set_header X-NginX-Proxy true;
			client_max_body_size 200m;
			proxy_pass http://localhost:8086;
        }
    }

监听端口8099,匹配路径weijianweiAdminApi,将其转发到http://localhost:8086上,

此时访问项目:http://localhost:8099/weijianwei 成功出现页面,登录时候,预检请求通过,正式请求报跨域问题

前端项目prod.env.js设置 BASE_API:

成功登录访问

总结

到此这篇关于vue项目部署跨域问题的文章就介绍到这了,更多相关vue项目部署跨域内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue实现echarts饼图/柱状图点击事件实例

    vue实现echarts饼图/柱状图点击事件实例

    echarts原生提供了相应的API,只需要在配置好echarts之后绑定相应的事件即可,下面这篇文章主要给大家介绍了关于vue实现echarts饼图/柱状图点击事件的相关资料,需要的朋友可以参考下
    2023-06-06
  • vue实现的网易云音乐在线播放和下载功能案例

    vue实现的网易云音乐在线播放和下载功能案例

    这篇文章主要介绍了vue实现的网易云音乐在线播放和下载功能,结合具体实例形式分析了网易云音乐相关接口调用与操作技巧,需要的朋友可以参考下
    2019-02-02
  • vue点击Dashboard不同内容 跳转到同一表格的实例

    vue点击Dashboard不同内容 跳转到同一表格的实例

    这篇文章主要介绍了vue点击Dashboard不同内容 跳转到同一表格的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • vue element ui表格相同数据合并单元格效果实例

    vue element ui表格相同数据合并单元格效果实例

    工作中遇到需要根据单元格某个属性合并,特此记录下,下面这篇文章主要给大家介绍了关于vue element ui表格相同数据合并单元格效果的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • vue中el-table实现可拖拽移动列和动态排序字段

    vue中el-table实现可拖拽移动列和动态排序字段

    最近公司需要做个项目,需要拖拽表格和自定义表格字段,本文主要介绍了vue中el-table实现可拖拽移动列和动态排序字段,具有一定吃参考价值,感兴趣的可以了解一下
    2023-12-12
  • 对vue中methods互相调用的方法详解

    对vue中methods互相调用的方法详解

    今天小编就为大家分享一篇对vue中methods互相调用的方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-08-08
  • vue项目兼容ie11的实现方法

    vue项目兼容ie11的实现方法

    本文主要介绍了vue项目兼容ie11的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • @vue/cli4.x版本的vue.config.js常用配置方式

    @vue/cli4.x版本的vue.config.js常用配置方式

    这篇文章主要介绍了@vue/cli4.x版本的vue.config.js常用配置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • vue.js中指令Directives详解

    vue.js中指令Directives详解

    这篇文章主要为大家详细介绍了vue.js中指令Directives,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • Vue+Element switch组件的使用示例代码详解

    Vue+Element switch组件的使用示例代码详解

    这篇文章主要介绍了Vue+Element switch组件的使用,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06

最新评论