关于vue2用vue-cli搭建环境后域名代理的http-proxy-middleware解决api接口跨域问题
在vue中用http-proxy-middleware来进行接口代理,比如:本地运行环境为http://localhost:8080但真实访问的api为 http://www.baidu.com这时我们就需要把http://www.baidu.com代理到api接口上
在build下的 dev-server.js 中我们需要对下面代码进行修改
var proxyMiddleware = require('http-proxy-middleware');
var proxyMiddleware = require('http-proxy-middleware')
var server = express()
server.middleware = [
proxyMiddleware(['/mobile'], {target: 'http://baidu.com', changeOrigin: true}),
proxyMiddleware(['/school'], {target: 'http://baidu.com', changeOrigin: true}),
proxyMiddleware(['/api/track'], {target: 'http://baidu.com', changeOrigin: true}),
proxyMiddleware(['/manage/integral'], {target: 'http://baidu.com', changeOrigin: true}),
];
server.use(server.middleware);
这里需要注意需要把接口调用的开始部分分别写在 proxyMiddleware中 如 /mobile是代表你访问的接口为 http://baidu.com/mobile/ 开头的所有接口 相当于http://baidu.com/mobile/*
在调用的时候我们用 vue-resource,在main.js中引入
vue-resource 的安装方式: npm install --save-dev vue-resource
import VueResource from 'vue-resource' Vue.use(VueResource)
在页面中具体调用为
this.$http.get('/mobile/api/h5/', {params: {name:1,type:2}}).then((response) => {
response = response.body;
if (response.errno === 0) {
this.goods = response.data;
}
});
到这里我们就完成了vue的代码域名代理,如有错误,或错别字欢迎大家留言指正!
关于vue2用vue-cli搭建环境后域名代理的http-proxy-middleware解决api接口跨域问题的更多相关文章
- 关于vue2用vue-cli搭建环境后域名代理的http-proxy-middleware
在vue中用http-proxy-middleware来进行接口代理,比如:本地运行环境为http://localhost:8080但真实访问的api为 http://www.baidu.com这时我 ...
- 使用@vue/cli搭建vue项目开发环境
当前系统版本 mac OS 10.14.2 1.安装node.js开发环境 前端开发框架和环境都是需要 Node.js vue的运行是要依赖于node的npm的管理工具来实现 <mac OS ...
- vue cli搭建项目及文件引入
cli搭建方法:需安装nodejs先 1.npm install -g cnpm --registry=https://registry.npm.taobao.org //安装cnpm,用cnpm下载 ...
- vue proxyTable 接口跨域请求调试
在不同域之间访问是比较常见,在本地调试访问远程服务器....这就是有域问题. VUE解决通过proxyTable: 在 config/index.js 配置文件中 dev: { env: requir ...
- vue proxyTable 接口跨域请求调试(五)
在不同域之间访问是比较常见,在本地调试访问远程服务器....这就是有域问题. VUE解决通过proxyTable: 在 config/index.js 配置文件中 dev: { env: requir ...
- Vue请求第三方接口跨域最终解决办法!2020最终版!
废话少说,再百度的近三个小时尝试了近10种方法无解后,终于皇天不负有心人! 这个vue axios 跨域问题被我解决了! 需求:请求客户端ip地址获取客户ip,再根据ip获取用户位置 工具:Vue,a ...
- vue 音乐App QQ音乐搜索列表最新接口跨域设置
在 webpack.dev.config.js中 'use strict' const utils = require('./utils') const webpack = require('webp ...
- VUE -- Mac上解决Chrome浏览器跨域问题
最近做前端开发总是遇到一个很奇怪的现象,同一个AJAX请求,在Chrome里调试的时候就会提示跨域,但是在手机模拟器或者真机上调试的时候就不会,于是百度了一下,发现是Chrome的安全策略导致的,需要 ...
- Vue 从零开始--搭建环境
简要:继项目空闲后,开始着手vue的学习;为此向大家分享其中的艰辛和搭建办法,希望能够跟各位VUE大神学习探索,如果有不对或者好的建议告知下:*~*! 一.什么是VUE? 是一种node.js框架,特 ...
随机推荐
- subtext 安装PythonIDE -Anaconda
安装PythonIDE -Anaconda 打开subtext,通过快捷键 cmd+shift+P 打开 Package Control 来安装其他的插件了. 输入 install 然后你就能看见屏幕 ...
- 【learning】vim爆改记 (如何让vim用起来像devc++)
由于本蒟蒻NOIP人品大爆发,能去冬令营,故准备开始练习使用linux下的IDE:vim 在dalao DTZ的帮助下,我装好了vim,并做了最初的配置. 然而........好难用啊,怎么和devc ...
- (转) rabbitmq应用场景
原文:http://blog.csdn.net/wangpengblog/article/details/76405598
- hadoop1.x异常
可能是存在class冲突 http://stackoverflow.com/questions/25130799/hadoop-java-io-ioexception-call-to-localhos ...
- Apache JMeter2.13 实战
安装目录下 设置浏览器代理127.0.0.1 8080,以chrome为例 开始录制脚本,进入应用点击相应的功能,可以捕获到如下地址 去除无用地址,保留需要测试的地址 注:上图编号列表中11为获取co ...
- Filter应用之-验证用户是否已经登录
过滤器: public class LoginFilter implements Filter{ @Override public void init(FilterConfig filterConfi ...
- Mac系统的下载(图文详解)
不多说,直接上干货! 经常使用苹果电脑的网友们,有时候不免会遇到电脑系统崩溃的情况,在通过各种系统补救都无法修复苹果系统时,动手能力稍强的网友肯定会想到要重装系统,这时就需要去下载苹果系统,那么, ...
- 关联更新 Update
Update a set a.Manage_FunctID=b.Manage_FunctID From Manage_PageUrl a Left join Manage_ButtonBar ...
- C/C++ -- Gui编程 -- Qt库的使用 -- 标准对话框
-----mywidget.cpp----- #include "mywidget.h" #include "ui_mywidget.h" #include & ...
- 【Express系列】第1篇——项目创建
安装 node 和 Express 4 node官网:http://nodejs.org/ Express Github:https://github.com/expressjs/express ...