zoukankan      html  css  js  c++  java
  • Vux使用AjaxPlugin发送请求跨域问题解决

    在main.js入口文件引入

    import { AjaxPlugin } from 'vux'
    Vue.use(AjaxPlugin)

    组件中直接使用如下,会报错跨域的问题:

    this.$http.get('https://xxx.cn/ruoyi/wx/sys/loadNavBar?state=1').then(({data}) => {
      console.log(data)
    })

     No 'Access-Control-Allow-Origin' header is present on the requested resource。

    切记:这里配置完之后一定要重启项目,不然不会生效

    解决如下:

    假设,我需要请求的接口的入口为 https://xxx.cn

    请求一接口如: https://xxx.cn/ruoyi/wx/sys/loadNavBar?state=1

    修改 config/index.js 配置文件,修改 proxyTable 的值为如下:

    proxyTable: {
      '/': {
            target: 'https://xxx.cn',
            changeOrigin: true,
      }
    },

    则组件中使用如下:

    this.$http.get('/ruoyi/wx/sys/loadNavBar?state=1').then(({data}) => {
      console.log(data)
    })

    2,假设,你需要请求的接口的入口为 https://xxx.cn/api,而代码里请求的 url 写的是 '/api',则你需要使用 pathRewrite 来进行路径重写“/ruoyi/wx”,而不是直接改 traget

    proxyTable: {
      '/api': {
            target: 'https://xxx.cn',
            changeOrigin: true,
            pathRewrite: {
              '^/api': '/ruoyi/wx'
            }
      }
    },
    this.$http.get('/api/sys/loadNavBar?state=1').then(({data}) => {
      console.log(data)
    })
  • 相关阅读:
    DataGird导出EXCEL的几个方法
    csv文件与DataTable互相导入处理
    LeetCode 345
    LeetCode 168
    LeetCode 344
    LeetCode 342
    LeetCode 343
    LeetCode 326
    LeetCode 338
    LeetCode 319
  • 原文地址:https://www.cnblogs.com/QW-lzm/p/13972077.html
Copyright © 2011-2022 走看看