面试题系列---vue 怎么实现跨域

Posted 程序媛...

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试题系列---vue 怎么实现跨域相关的知识,希望对你有一定的参考价值。

1.使用 vue-cli 脚手架搭建项目时 proxy 解决跨域问题 ,在项目目录下配置vue.config.js文件:

module.exports={
    // hash: publicPath ""
    // history: publicPath "/"
    publicPath:"",
    assetsDir:"static",
    outputDir:"dist",
    indexPath:"index.html",
    devServer:{
        proxy:{
            "/api":{
                target:"http://localhost:3000",//源地址
                ws:true,//改变源
                changeOrigin:true
            }
        }
    }
}

2.使用 CORS(跨域资源共享)

1、前端设置: 前端 vue 设置 axios 允许跨域携带 cookie(默认是不带 cookie) axios.defaults.withCredentials = true;

2、后端设置:

    1、 跨域请求后的响应头中需要设置:

    2、 Access-Control-Allow-Origin 为发起请求的主机地址。

    3、 Access-Control-Allow-Credentials,当它被设置为 true 时,允许跨域带 cookie,但此时 Access-Control- Allow-Origin 不能为通配符*。

   4、 Access-Control-Allow-Headers,设置跨域请求允许的请求头。

   5、 Access-Control-Allow-Methods,设置跨域请求允许的请求方式。

以上是关于面试题系列---vue 怎么实现跨域的主要内容,如果未能解决你的问题,请参考以下文章

前端面试题汇总

vue前端面试题

史上最全前端vue面试题!推荐收藏

一些相关Vue面试题

一些相关Vue面试题

这些面试题你会怎么答? (系列一)