我试图创建一个小代理服务器,我可以编辑客户端和服务器之间的请求和响应。
这是我到目前为止所得到的:
var express = require('express');
var app = express();
var request = require('request');
app.use('/login', function(req, res) {
var url = request.post({
uri: 'http://192.168.1.53',
json: req.body
});
req.pipe(url).pipe(res);
});
app.listen(7501);
它完全适合我的情况。但我需要编辑请求和响应。 即返回的cookie和发送的表单数据。 任何帮助都会很棒。对Node来说很新。
答案 0 :(得分:0)
结束了这一点 - 接受了快递请求,然后根据请求创建了一个新的帖子请求。然后发生了一些神奇的事情,通过快递将第二个响应返回给客户端。
app.use('/login', function(req, res) {
request.post(
'http://192.168.1.53',
{ form: { req: 'auth', cid: '1', em: req.body.em, pw: req.body.pw, rm: true} },
function (error, response, body) {
if (!error && response.statusCode == 200) {
var cookie = response.headers['set-cookie'];
console.log(cookie)
console.log(body) //using body-parser
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.header('Access-Control-Allow-Headers', 'Content-Type');
res.json({ success: true });
}
}
);
});