Vue proxyTable配置多个接口地址,解决跨域的问题


Posted in Javascript onSeptember 11, 2020

最开始的时候,因为请求后台出现跨域问题。

查找资料配置proxyTable,解决跨域问题。如下图所示:

Vue proxyTable配置多个接口地址,解决跨域的问题

axios请求页面:

this.$axios.post('/api/weblogin/login',data).then(res=>{
    console.log(res)
})

后面遇到需要连接不同的接口域名,我在proxyTable里增加了一个apiGas。axios请求存在获取得到api但是不能获取apiGas(提示请求资源不存在)。

proxyTable: {
   '/api': {
    target: 'http://', // 接口域名
    changeOrigin: true, //是否跨域
    pathRewrite: {
     '^/api': '/bsgzf/api/auth/' , //需要rewrite的,
    },
   },
   '/apiGas': {
    target: 'http://', // 接口域名
    changeOrigin: true, //是否跨域
    pathRewrite: {
     '^/apiGas':'/bsgzf/api/gas/'
    }
   },  
  },

查找了很多资料都没有具体的解决方法,偶然在一个相同的问题下发现一个回复,让把这两个链接位置换一下,抱着试一试的态度换了,重新运行,结果两个都可以获取了。不知道什么原理???有知道的请指教!!!

正解:

proxyTable: {
   '/apiGas': {
    target: 'http://', // 接口域名
    changeOrigin: true, //是否跨域
    pathRewrite: {
     '^/apiGas':'/bsgzf/api/gas/'
    }
   }, 
   '/api': {
    target: 'http://', // 接口域名
    changeOrigin: true, //是否跨域
    pathRewrite: {
     '^/api': '/bsgzf/api/auth/' , //需要rewrite的,
    },
   }, 
  },

补充知识:Vue里的proxyTable解决跨域,api接口管理

本文单纯的介绍Vue项目中接口的集中管理以及跨域的解决方法。

1.webpack里的proxyTable设置跨域:config->index.js

module.exports = {
 dev: {
  assetsSubDirectory: 'static',
  assetsPublicPath: '/',
  proxyTable: {
   '/api':{
    target:'http://localhost:80', //这里配置的是 请求接口的域名
    // secure: false, // 如果是https接口,需要配置这个参数
    changeOrigin: true, // 如果接口跨域,需要进行这个参数配置
    pathRewrite:{
     '^/api':'' //路径重写,这里理解成用'/api'代替target里面的地址.
    }
   }
  },
 }

2.设置api

2.1文件目录

Vue proxyTable配置多个接口地址,解决跨域的问题

2.2 api.js 编码

import axios from 'axios'

axios.defaults.baseURL = '/api';
axios.defaults.headers.post['Content-Type'] = 'application/json;charset=utf-8';
axios.defaults.withCredentials = true

//接口自定义

//修改用户信息接口
export const updateOneUser = params => {
 return axios.post('/anta/anta-back/src/php/updateUser.php', params)
  .then(res => res.data)
};

3.组件中引用

import {updateOneUser} from "../../api/api"
methods:{
  //给后台发送数据
  var params = new URLSearchParams();
  params.append('userphone', this.watchStudentInfo.userphone);
  params.append('userpass', this.watchStudentInfo.userpass);
  console.log(params)
  updateOneUser(params).then(data=>{
   //后台返回的数据
   if(data==1){
    //添加成功
    this.$message.success('修改成功')
   }else{
    //失败
    this.$message.success('修改失败')
   }
  }).catch(error=>{
   this.$message.success('修改失败')
  })
}

以上这篇Vue proxyTable配置多个接口地址,解决跨域的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript下通过的XMLHttpRequest发送请求的代码
Jun 28 Javascript
在JavaScript中处理时间之setMinutes()方法的使用
Jun 11 Javascript
jquery操作select元素和option的实例代码
Feb 03 Javascript
JS通过Cookie判断页面是否为首次打开
Feb 05 Javascript
JS如何判断json是否为空
Jul 06 Javascript
JavaScript使用readAsDataUrl方法预览图片
May 10 Javascript
js实现图片懒加载效果
Jul 17 Javascript
浅谈vue项目4rs vue-router上线后history模式遇到的坑
Sep 27 Javascript
Vue安装浏览器开发工具的步骤详解
May 12 Javascript
createObjectURL方法实现本地图片预览
Sep 30 Javascript
Vue数字输入框组件的使用方法
Oct 19 Javascript
js实现头像上传并且可预览提交
Dec 25 Javascript
关于ES6尾调用优化的使用
Sep 11 #Javascript
在js文件中引入(调用)另一个js文件的三种方法
Sep 11 #Javascript
Vue项目开发常见问题和解决方案总结
Sep 11 #Javascript
JavaScript实现简单日历效果
Sep 11 #Javascript
vue $mount 和 el的区别说明
Sep 11 #Javascript
JavaScript 判断数据类型的4种方法
Sep 11 #Javascript
jQuery实现日历效果
Sep 11 #jQuery
You might like
全新的PDO数据库操作类php版(仅适用Mysql)
2012/07/22 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
2015/10/10 PHP
PHP实现支持加盐的图片加密解密
2016/09/09 PHP
php结合redis高并发下发帖、发微博的实现方法
2016/12/15 PHP
Laravel框架源码解析之模型Model原理与用法解析
2020/05/14 PHP
JavaScript中去掉数组中的重复值的实现方法
2011/08/03 Javascript
jquery attr方法获取input的checked属性问题
2014/05/26 Javascript
jQuery中innerHeight()方法用法实例
2015/01/19 Javascript
js实现的页面矩阵图形变换特效
2016/01/26 Javascript
Node.js实用代码段之获取Buffer对象字节长度
2016/03/17 Javascript
jQuery实现的鼠标经过时变宽的效果(附demo源码)
2016/04/28 Javascript
用原生JS对AJAX做简单封装的实例代码
2016/07/13 Javascript
js replace(a,b)之替换字符串中所有指定字符的方法
2016/08/17 Javascript
JavaScript编码风格指南(中文版)
2016/08/26 Javascript
基于JS快速实现导航下拉菜单动画效果附源码下载
2016/10/27 Javascript
koa上传excel文件并解析的实现方法
2018/08/09 Javascript
Vue 报错TypeError: this.$set is not a function 的解决方法
2018/12/17 Javascript
JQuery样式操作、click事件以及索引值-选项卡应用示例
2019/05/14 jQuery
Jquery实现获取子元素的方法分析
2019/08/24 jQuery
Python continue语句用法实例
2014/03/11 Python
Python实现动态添加类的属性或成员函数的解决方法
2014/07/16 Python
Python numpy 常用函数总结
2017/12/07 Python
Pandas 对Dataframe结构排序的实现方法
2018/04/10 Python
Pandas DataFrame 取一行数据会得到Series的方法
2018/11/10 Python
使用TensorFlow实现简单线性回归模型
2019/07/19 Python
Python argparse模块应用实例解析
2019/11/15 Python
python爬虫添加请求头代码实例
2019/12/28 Python
css3与html5实现响应式导航菜单(导航栏)效果分享
2014/02/12 HTML / CSS
css3实现二维码扫描特效的示例
2020/10/29 HTML / CSS
德国的大型美妆个护电商:Flaconi
2020/06/26 全球购物
师范生自荐信模板
2014/05/28 职场文书
小学班主任评语
2014/12/29 职场文书
车间统计员岗位职责
2015/04/14 职场文书
贫困生证明范文
2015/06/16 职场文书
ant design charts 获取后端接口数据展示
2022/05/25 Javascript
使用Nginx+Tomcat实现负载均衡的全过程
2022/05/30 Servers