第一步:cmd窗口进入nodejs项目目录下:前端
执行以下命令:node
$ npm install --save-dev http-proxy-middlewareexpress
让后在server.js文件中npm
写入以下:api
const express = require('express'); const app = express();
/***************************** 开始启动反向代理 **********************************/ var proxy = require('http-proxy-middleware');//引入nodejs的反向代理模块 // proxy middleware options var options = { target: 'http://127.0.0.1:9090', // target host changeOrigin: true, // needed for virtual hosted sites }; // create the proxy (without context) var exampleProxy = proxy('/api-sso/*',options); app.use(exampleProxy); /***************************** 开始启动反向代理 **********************************/ /**************************** 开启服务监听 ******************************/ app.listen('3000', function() { console.log('启动项目mpmdFront,端口:3000'); });
举例:前端为服务器地址为127.0.0.1:3000,其中如要直接访问http://127.0.0.1:9090/api-sso/*的地址资源就会出现跨域问题,跨域
此配置var exampleProxy = proxy('/api-sso/*',options);就是将/api-sso/*访问资源代理访问到http://127.0.0.1:9090/api-sso/*的地址服务器中去。服务器
ajxa调用以下:app
以上的代理配置就会将http://127.0.0.1:3000/api-sso/*的请求,转达到http://127.0.0.1:9090/api-sso/*服务器上去。以达到一个前端跨域解决方法。里面的options详细配置ui
可参考官网:https://www.npmjs.com/package/http-proxy-middlewareurl
其中options为参数选项:
target:为要代理的目标url