vue 配置跨域访问

一、本地跨域:使用axios发送AJAX请求

1、安装axios并引入

npm的方式:

 npm install axios -S 或 cnpm install axios -S

2、引入使用axios
在main.js或者单独组件中引用 

import axios from ‘axios’
Vue.prototype.$axios = axios

二、配置跨域

1、在vue.config.js里配置

// 跨域的代理中转服务器服务
    proxy: {
      "/api":{   // /vue代理target
        target: 'http://10.1.XXX.XXX:8088',      // 后端接口的根目录
        // secure: true,           // 如果是 https ,需要开启这个选项,http为false
        changeOrigin: true,        // 是否跨域
        pathRewrite: {            // 是否重写路径,看代理前端路径是否与后端路径一致
        '^/api':'', //将所有含/api路径的,去掉/api转发给服务器                 
        }
      }
    },

 三、调用

<script>
export default {
 methods: {
  goVoice() {
   // 这里实际请求地址为http://10.1.XXX.XXX:8088/text
   this.axios.post('/api/text').then(res => {
     console.log(res, 'res')
   })
  }
 }
}
</script>

三、线上跨域 

server {
    listen       80;   // 监听端口号
    server_name  localhost;   // 服务器名称

    # 静态资源路径,这里的/root/path/to/dist是Vue项目build生成的dist目录所在路径
    location / {
       root   /root/path/to/dist;
       index  index.html;
    }

    # 接口转发,这里的http://example.com是接口的实际地址
    # 以/api接口为例,配置如下:
    location /api/ {
        proxy_pass http://example.com/; # 设置需要转发的具体地址
        proxy_set_header Host $host; # 设置将要发送到后端服务器的请求头部信息
    }
}

  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值