当前位置: 首页 > 后端技术 > Node.js

创建本地服务,服务代理(解决跨域),支持热更新,老项目设计

时间:2023-04-03 18:38:18 Node.js

创建本地服务,和服务代理,支持热更新创建http代理支持热更新TODO是专门为老项目设计的,不使用构建工具(webpack,gulp,grunt等)确保你的nodejs版本>=8.0.0,以解决跨域问题,支持本地开发热更新安装(install)yarnadd@gauseen/web-proxy-D#Recommend#ornpmi@gauseen/web-proxy-Dusage(用法)//首先在项目根目录。js文件//示例://server.jsconstpath=require('path')constserver=require('@gauseen/web-proxy')constoptions={watch:false,watchStatic:path.join(__dirname,'./demo/'),serverStatic:path.join(__dirname,'./'),port:8008,proxyTable:{'/api':{target:'http://doman.com/',}/*'/apiFlag':{target:'http://doman.com/',pathRewrite:{//^/old-path':'/new-path//下面的配置是重写以/开头的请求apiFlag写成/newFlag,或''(空)'^/apiFlag':'/newFlag',}}*/},notify:true,//ignores:['js'],callback:function(){console.log('服务器运行成功...')},}server(options)options参数说明:参数说明类型默认必填optionaloptionwatch是否开启热更新Booleanfalseyes-watchStatic热更新目录Stringyes-server静态静态服务目录Stringyes-proxyTabledoman要代理的对象yes-port端口号8008no-notify是否在浏览器端显示通知BooleanfalseNo-ignores忽略watch文件格式Array-No[css,html,js]callback服务启动成功callbackFunction-No-startservicenodeserver.js#or#Configurenpmscripts自行运行#更改server.js文件需要重启才能使更改生效。浏览器运行localhost:/注意:proxyTable是一个对象,关键是:请求URL的统一标识字段,比如请求接口:http://doman/api/back/login,那么api就是其标识字段值:{target:(域名或IP)待代理doman,#(必填)pathRewrite:{'^/oldFlag':'/newFlag',}#(非必填)}pathRewrite字段为用于防止后端接口混淆,没有统一的标识。这时候在本地开发前端的时候,可以自己添加一个统一的标识,并使用pathRewrite函数,然后将这个字段设置为空字符,这样就可以请求到服务器的原始URL了。如果好用,请给我一个Star。你的Star是我最大的动力,谢谢!GitHub地址欢迎来到我的个人博客。如果干货传送门好用,麻烦给个star吧。你的star是我最大的动力,谢谢!GitHub地址未经作者许可禁止转载,谢谢!欢迎留言评论!