博客
关于我
开发环境设置跨域--react
阅读量:536 次
发布时间:2019-03-08

本文共 1138 字,大约阅读时间需要 3 分钟。

http-proxy-middleware配置多路代理详解

由于本地Node.js版本为10.16.3,正常使用命令npm install http-proxy-middleware --save会下载并安装最新版本2.0.x,但由于版本不兼容,建议固定下载最大版本1.x.1。

配置步骤

当安装完成后,以下是经典的配置示例:

const { createProxyMiddleware } = require('http-proxy-middleware');module.exports = function(app) {    app.use(        ['/api1', '/api2'],        createProxyMiddleware({            target: 'http://localhost',            changeOrigin: true,            pathRewrite: {                '^/api1': '',                '^/api2': ''            },            router: {                'localhost:3000/api1': 'http://localhost:5000',                'localhost:3000/api2': 'http://localhost:5001'            }        }),    );}

详细说明

  • 代理配置方式

    通过pathRewriterouter选项,实现了基于路径的转发规则。

  • 两级路由 /api1/api2

    每个路由都会被代理到指定目标服务器,分别指向localhost:5000localhost:5001

  • 超级简单的实现

    使用http-proxy-middleware包裹成 middleware,然后在路由器中使用,简单高效。

安装推荐

  • 如果已经安装Yarn
    建议使用yarn add http-proxy-middleware --save进行安装,符合项目依赖管理规范。

常见问题

  • 安装失败

    确保Node.js版本为10.16.3及以上,确保网络环境稳定,重新执行安装命令。

  • 配置失败

    检查http-proxy-middleware版本是否为固定版本1.x.1,如果无效可尝试升级至最新版本,确认是否与其他PM件冲突。

  • 未生效

    确保 proxy middleware 在正确的位置,且在 app.use()之前正确加载。如果有组件层使用,建议确保 stack order 正确。

  • 转载地址:http://uhsiz.baihongyu.com/

    你可能感兴趣的文章
    MySQL 中开启二进制日志(Binlog)
    查看>>
    MySQL 中文问题
    查看>>
    MySQL 中日志的面试题总结
    查看>>
    MySQL 中随机抽样:order by rand limit 的替代方案
    查看>>
    MySQL 为什么需要两阶段提交?
    查看>>
    mysql 为某个字段的值加前缀、去掉前缀
    查看>>
    mysql 主从 lock_mysql 主从同步权限mysql 行锁的实现
    查看>>
    mysql 主从互备份_mysql互为主从实战设置详解及自动化备份(Centos7.2)
    查看>>
    mysql 主键重复则覆盖_数据库主键不能重复
    查看>>
    Mysql 优化 or
    查看>>
    mysql 优化器 key_mysql – 选择*和查询优化器
    查看>>
    MySQL 优化:Explain 执行计划详解
    查看>>
    Mysql 会导致锁表的语法
    查看>>
    mysql 使用sql文件恢复数据库
    查看>>
    mysql 修改默认字符集为utf8
    查看>>
    Mysql 共享锁
    查看>>
    MySQL 内核深度优化
    查看>>
    mysql 内连接、自然连接、外连接的区别
    查看>>
    mysql 写入慢优化
    查看>>
    mysql 分组统计SQL语句
    查看>>