gpt4 book ai didi

node.js - 重定向后编辑响应(node.js 和express)

转载 作者:太空宇宙 更新时间:2023-11-04 03:00:09 25 4
gpt4 key购买 nike

我有一个 Nodejs Express 应用程序,它接收 POST 请求 (XML) 并简单地将它们重定向到不同的主机来回复原始调用者(也带有 XML 消息)。

var app = require('express')();

app.post('/', function(req, res) {
res.redirect(307, 'http://localhost:8888/');
});

app.listen(3000, function() {
console.log('Application listening on http://localhost:3000/');
});

我想要实现的是修改第二个主机(localhost:8888)的响应。如何在第二个主机的响应到达原始调用者之前拦截并编辑该响应?

我无法从文档中弄清楚,因此我们将非常感谢您的帮助,谢谢。

最佳答案

您不能这样做,因为来自服务器 2 的响应是由处理重定向的客户端(例如您的浏览器)获取的。您必须自己在服务器端获取响应,修改它并将其发回。

var app = require('express')();
var request = // your preferred http library

app.post('/', function(req, res) {
request.get('http://localhost:8888/', function (err, response) {
if (err) {
return res.error(err);
}

// Here you have the response, you can modify it.

res.send(response.body);
});
});

app.listen(3000, function() {
console.log('Application listening on http://localhost:3000/');
});

关于node.js - 重定向后编辑响应(node.js 和express),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59880314/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com