packing-urlrewrite
一个用来做代理和转发URL的express中间件
安装
npm install packing-urlrewrite --save-dev
使用
使用静态配置(静态和热加载配置二选一)
import Express from 'express';
import urlrewrite from 'packing-urlrewrite';
const rules = {
// 1.用json模拟数据,标示符为 `require!`
'^/api/(.*)': 'require!/mock/api/$1.js',
// 2.同域转发
'^/
// /mock/api/$1.js
export default (req, res) => {
// maybe get parameters from request
const data = {
name: 'Joe'
};
res.setHeader('Content-Type', 'application/json');
res.end(JSON.stringify(data));
};
使用热加载配置
import Express from 'express';
import urlrewrite from 'packing-urlrewrite';
const rules = {
// 用热发配置rulesHotFile
rulesHotFile: __dirname + '/rewriteRules.js'
};
const app = new Express();
app.use(urlrewrite(rules));
// rewriteRules.js
module.exports = {
// 1.用json模拟数据,标示符为 `require!`
'^/api/(.*)': 'require!/mock/api/$1.js',
// 2.同域转发
'^/
参数
debug - {boolean} 是否输出转发信息,默认值:false
: '/index.html',
// 3.跨域转发
'^/test/(.*)': 'http://test.xxx.com/test/$1'
};
const app = new Express();
const options = { debug: true };
app.use(urlrewrite(rules));
__CODE_BLOCK_2__
使用热加载配置
__CODE_BLOCK_3__
__CODE_BLOCK_4__
参数
__INLINE_CODE_0__ - {boolean} 是否输出转发信息,默认值:__INLINE_CODE_1__
: '/index.html',
// 3.跨域转发
'^/test/(.*)': 'http://test.xxx.com/test/$1'
}
参数
__INLINE_CODE_0__ - {boolean} 是否输出转发信息,默认值:__INLINE_CODE_1__
: '/index.html', // 3.跨域转发 '^/test/(.*)': 'http://test.xxx.com/test/$1' }; const app = new Express(); const options = { debug: true }; app.use(urlrewrite(rules)); __CODE_BLOCK_2__使用热加载配置
__CODE_BLOCK_3__ __CODE_BLOCK_4__参数
__INLINE_CODE_0__ - {boolean} 是否输出转发信息,默认值:__INLINE_CODE_1__
