我有一个使用http-proxy-middleware的节点/快速代理设置,将请求路由到java-tomcat Web服务(代理目标)。
在将请求转发到代理目标之前,我需要将上下文信息类型为“ application / x-www-form-urlencoded”的POST表单数据注入请求原始文件中。在将响应发送到客户端之前,代理响应将需要删除相同的发布参数。
我已经使用了许多不同的代理,包括http-proxy,http-proxy-middleware,node-proxy和express-proxy,但是这些模块似乎都没有可用于POST参数操纵的解决方案。
这个问题最初发布在 https://github.com/chimurai/http-proxy-middleware/issues/61#issuecomment-205494577
'use strict';
var express = require('express');
var router = express.Router();
//var request = require("request");
var proxy_filter = function (path, req) {
return path.match('^/report') && ( req.method === 'GET' || req.method === 'POST' );
};
var proxy_options = {
target: 'http://localhost:8080',
logLevel: 'debug',
//logProvider:
onError(err, req, res) {
res.writeHead(500, {
'Content-Type': 'text/plain'
});
res.end('Something went wrong. And we are reporting a custom error message.' + err);
},
onProxyRes(proxyRes, req, res) {
//proxyRes.headers['x-added'] …Run Code Online (Sandbox Code Playgroud)