koa-even-better-http-proxy
Version:
http proxy middleware for Koa
18 lines (15 loc) • 610 B
JavaScript
/* eslint no-param-reassign: ["error", { "props": false }] */
const defaultDecorator = (proxyReqOptBuilder /* , userReq */) =>
proxyReqOptBuilder;
const getResolverFn = (options) =>
options.proxyReqOptDecorator || defaultDecorator;
export default (container) => {
const resolverFn = getResolverFn(container.options);
return Promise.resolve(
resolverFn(container.proxy.reqBuilder, container.user.ctx)
).then((processedReqOpts) => {
delete processedReqOpts.params;
container.proxy.reqBuilder = processedReqOpts;
return Promise.resolve(container);
});
};