跨域的完全讲解

Posted qiuchuanji

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了跨域的完全讲解相关的知识,希望对你有一定的参考价值。

什么是跨域,为什么会跨域?

产生跨域的原因,在前台的接口,不在同一个域名下就会产生跨域。

解决方案如下:

接口准备:http://m.kugou.com/?json=true  酷狗音乐的音乐列表接口

解决方案一: 

  关于vue-cli 中请求代理的配置

    proxyTable: {
      "/proxy/": {
        target: "http://m.kugou.com",
        "secure": false,
        "changeOrigin": true,
        "pathRewrite": {
          "^/proxy": "" 
        },
        "headers": {
          "User-Agent": "Mozilla/5.0 (Linux; android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/65.0.3325.181 Mobile Safari/537.36"
        }
      }
    },

  在项目的config/index.js中,dev里面有个 proxyTable,在里面写上代理的详细信息。

  /proxy/开头的请求,都会使用target的域名进行请求,

  secure中 false 为 http请求,true为https请求

  changeOrigin 为true 可以进行跨域请求

  pathRewrite 的^/proxy 为在地址后面拼接别的地址

  headersUser-Agent 为 请求的UA,可以写手机的UA,这样去模拟手机请求

  页面请求方式 直接在url 中写入 /proxy/rank/list?json=true
 
 
  持续更新中。。。

以上是关于跨域的完全讲解的主要内容,如果未能解决你的问题,请参考以下文章

完全跨域的单点登录

前端跨域的那些事

JSONP的跨域

ajax跨域原理以及解决方案

跨域的三种解决方案

跨域的几种方法及案例代码