说下vue工程中代理配置proxy
这个代理配置不需要后台进行ngnix代理跳转了,前端可以做。在vue.config.js文件中进行配置,如下:
module.exports = {
publicPath: process.env.VUE_APP_BASEURL || '/',
// 修改webpack的配置
configureWebpack: {
// 把原本需要写在webpack.config.js中的配置代码 写在这里 会自动合并
externals: {
'T': 'T'
}
},
// devServer 选项单独配置
devServer: {
https: false,
proxy: {
'/sys': {
target: process.env.VUE_APP_API_URL,//这个是全局的环境配置变量,单独建立的文件,以VUE_APP_开头的变量,每个文件中都可以访问,假设这里是http://www.sweeeper.com
changeOrigin: true,
onProxyReq: function (proxyReq) {
proxyReq.removeHeader('origin')
}
},
'/v1': {
target: process.env.VUE_APP_API_URL,
changeOrigin: true,
onProxyReq: function (proxyReq) {
proxyReq.removeHeader('origin')
}
}
},
before: app => {
// applyMock(app)
}
}
}
这里的‘/sys’是所有的axios里边的以这个开头的请求都替换成对应的http地址,这就也是所谓的前后端分离,只需要后端布置在服务器上,前端知道地址就可以进行交互。
如果已经配置了代理那么就不需要在axios中配置基地址了,因为给定的url里边已经替换了相关的字段。
像下边的就不需要设置再baseURL。(login.vue登陆文件中)
const newAxios = axios.create({
// baseURL: ROOT_URL,
timeout: 1500000
})
举个登陆请求的例子:
import { request } from '@/common/js/axios'
import MD5 from 'crypto-js/md5'
import { getToken } from '@/common/js/cache'
export function login ({ userNo, password }) {
const url = '/sys/security/logon'
return request({
url,
method: 'post',
data: {
userNo,
password: MD5(password).toString()
}
})
}
那么请求时候这个地址就变成了:http://www.sweeeper.com/security/logon
说下vue工程中代理配置proxy的更多相关文章
- vue项目中Webpack-dev-server的proxy用法
问题:在VUE项目中,需要请求后台接口获取数据,这时往往会出现跨域问题 解决方法:在vue.config.js中devServer配置proxy 常用的场景 1. 请求/api/XXX现在都会代理到请 ...
- vue工程权限怎么配置?
vue工程权限怎么配置? router.beforeEach((to, from, next) => { }):方法的to参数能拿到router设置的对象信息,如: { path: " ...
- vue工程中使用iconfont在线CDN不生效的问题
为什么在vue工程中引入iconfont有时候不生效呢? 请依次使用以下方法 1. 在index.html中引入在线资源 <!DOCTYPE html> <html lang=&qu ...
- 痞子衡嵌入式:MCUXpresso IDE下SDK工程在Build配置上与IAR,MDK差异
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下SDK工程在Build配置上与IAR,MDK差异. 恩智浦 SW 团队每个季度都会公布 SDK.Tool ...
- Vue 项目中 ESlint 配置
前言 对于 ESlint 这一块一直存在一些疑问,今天看到一个文章内容挺好的,这里拿来了. 一.eslint 安装 1.全局安装 npm i -g eslint 全局安装的好处是,在任何项目我们都可以 ...
- Vue Nginx反向代理配置 解决生产环境跨域
Vue本地代理举例: module.exports = { publicPath: './', devServer: { proxy: { '/api': { target: 'https://mov ...
- webpack中代理配置(proxyTable)
注:用axios请求 1,下载axios npm i axios --save 2,在config文件下的index.js中配置代理地址 参考:https://vuejs-templates.gith ...
- vue跨域代理配置
实际:http://a.com/b.php 代理:http://localhost/b.php 配置config/index.js proxyTable: { '/api': { target:'ht ...
- webpack+vue-cli中代理配置(proxyTable)
在做vue的项目时,用到webpack打包工具,我们会发现本地开发开启的node服务地址请求接口的地址存在跨域问题.本地开启的服务地址是 http://localhost:8080 而服务器的地址是 ...
随机推荐
- tarjan-LCA模板
洛谷P3379 #include <cstdio> using namespace std; ; struct etype{ int t,next; }; struct qtype{ in ...
- BZOJ 1954: Pku3764 The xor-longest Path(贪心+trie)
传送门 解题思路 \(trie\)的一个比较经典的应用,首先把每个点到根的异或和算出,然后建一棵\(trie\)把所有权值插入到\(Trie\)中,之后枚举所有结点,在\(Trie\)上贪心的跑统计答 ...
- Sticks
题目链接 题意:给你一组等长木棒,然后他随意砍断成n个木棒,木棒长度不一,但你知道分别是多少,要你求出原始木棒可能的最小长度. 思路:首先那个原始木棒的长度肯定是其总长度的约数,然后也肯定大于等于所有 ...
- python中闭包和装饰器
前言: 编程语言发展的过程中,我们为了提高代码利用率,发明了函数式编程.函数将代码封装起来,我们需要用到此功能函数的时候,调用一下就可以了.但是使用的过程中,也遇到了一些问题,比如函数实现的功能不够, ...
- linux 命令参数列表过长以及find用法
1.在一个目录下删除大批量的文件时,当使用 rm -rf 或者rm *会提示参数列表过长 通过修改命令为 :find . -name "*" | xargs rm -rf '* ...
- Java学习之多线程(线程安全问题及线程同步)
一.线程安全问题产生前提:1.多线程操作共享数据2.线程任务中有多条代码 class Ticket implements Runnable { //2.共享数据 private int num = 1 ...
- xshell的安装及连接linux的使用方法
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/lx_Frolf/article/deta ...
- 利用select单线程点对点聊天
select的优点与使用方法 select用单线程的方法遍历所有待读写的I/O接口, 当有接口可用时就会返回. select可设置电脑阻塞或非阻塞. 特别注意: 每次select前都要重新初始化集合和 ...
- 如何获得一个干净的 gnome 开发环境?
下载 stage3-amd64-systemd-xxxxxxxx.tar.bz2 eselect profile set default/linux/amd64/17.0/desktop/gnome/ ...
- shell数学运算
shell的数学运算 branches@ubuntu:~$ var1=$[ * ] branches@ubuntu:~$ echo $var1 branches@ubuntu:~$ var2=$[$v ...