最近公司在嘗試前後端分離的開發模式,現有應用是java語言,要從中間拆除一個小的模組來做前後端分離,工具上還是jquery,只不過是流程和分工上的分離,不想在前端的機器上搭建一套java環境,就根據教程搭了一下轉發,讓本地可以接上開發伺服器聯調。
建立專案
npm init
複製程式碼
安裝模組
npm install express connect-timeout http-proxy-middleware --save-dev
複製程式碼
建立js檔案
<!--proxy-server.js-->
const express = require('express');
const timeout = require('connect-timeout');
const proxy = require('http-proxy-middleware');
const app = express();
// 超時時間
const TIME_OUT = 30 * 1e3;
// 設定埠
app.set('port', '80');
// 設定超時 返回超時響應
app.use(timeout(TIME_OUT));
app.use((req, res, next) => {
if (!req.timedout) next();
});
proxyOption = {
target: 'http://localhost:8080',
pathRewrite: {
'^/api/' : '/' // 重寫請求,api/解析為/
},
changeOrigoin:true
};
// 靜態資源路徑
app.use('/', express.static('src/page'));
// 反向代理
app.use('/api/*', proxy(proxyOption));
// 監聽埠
app.listen(app.get('port'), () => {
console.log(`server running @${app.get('port')}`);
});
複製程式碼