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默认插槽的理解与实例代码

    vue默认插槽的理解与实例代码

    对于插槽的概念和使用,这是vue的一个难点,这需要我们静下心来,慢慢研究,下面这篇文章主要给大家介绍了关于vue默认插槽的相关资料,需要的朋友可以参考下
    2021-11-11
  • Vue filter 过滤当前时间 实现实时更新效果

    Vue filter 过滤当前时间 实现实时更新效果

    这篇文章主要介绍了Vue filter 过滤当前时间 实现实时更新效果,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • vue使用file-saver插件保存各种格式文件方式

    vue使用file-saver插件保存各种格式文件方式

    这篇文章主要介绍了vue使用file-saver插件保存各种格式文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • vue抽出组件并传值实例

    vue抽出组件并传值实例

    这篇文章主要介绍了vue抽出组件并传值实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • vue3中的事件修饰符详解

    vue3中的事件修饰符详解

    Vue3中的事件修饰符包括:.stop(阻止冒泡)、.prevent(阻止默认事件)、.self(阻止自身事件)、.capture(打乱冒泡顺序)、.once(事件只触发一次)和.passive(事件默认行为立即执行),这些修饰符可以帮助开发者更灵活地控制事件的处理方式
    2025-02-02
  • vue语法之拼接字符串的示例代码

    vue语法之拼接字符串的示例代码

    本篇文章主要介绍了vue语法之拼接字符串的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • vue3组件库Shake抖动组件搭建过程详解

    vue3组件库Shake抖动组件搭建过程详解

    这篇文章主要为大家介绍了vue3组件库Shake抖动组件搭建过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • 在vue中通过axios异步使用echarts的方法

    在vue中通过axios异步使用echarts的方法

    本篇文章主要介绍了在vue中通过axios异步使用echarts的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • layui实际项目使用过程中遇到的兼容性问题及解决

    layui实际项目使用过程中遇到的兼容性问题及解决

    这篇文章主要介绍了layui实际项目使用过程中遇到的兼容性问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • Vue前端数值转换为千分位格式并保留两位小数代码示例

    Vue前端数值转换为千分位格式并保留两位小数代码示例

    在Vue.js开发中我们经常会遇到需要将数字格式化为保留两位小数的情况,下面这篇文章主要给大家介绍了关于Vue前端数值转换为千分位格式并保留两位小数的相关资料,需要的朋友可以参考下
    2024-06-06

最新评论