Node.js 需要使用Nodejs进行单个http请求多重定向

Node.js 需要使用Nodejs进行单个http请求多重定向,node.js,redirect,Node.js,Redirect,我需要将一个http请求重定向到多个服务器 res.writeHead(301,{'Location':urlToRedirect1}); res.writeHead(301,{'Location':urlToRedirect2}) 我无法使用上述代码重定向。只有最后一个url(urlToRedirect2)才能正确重定向 这是否可以使用res.writeHead重定向多个服务器。如果没有,我可以知道替代方法。查看,从上面的声音中,您不需要重定向;类似于以下内容(注意,我假设您正在收到一个表单帖

我需要将一个http请求重定向到多个服务器

res.writeHead(301,{'Location':urlToRedirect1}); res.writeHead(301,{'Location':urlToRedirect2})

我无法使用上述代码重定向。只有最后一个url(urlToRedirect2)才能正确重定向

这是否可以使用res.writeHead重定向多个服务器。如果没有,我可以知道替代方法。

查看,从上面的声音中,您不需要重定向;类似于以下内容(注意,我假设您正在收到一个表单帖子,请求的主体就是您需要转发的内容

function makeRequest(callback){
    var request - require('request');
    var dataToSend = req.body;
    var url1 = 'http://server1/resource';
    var url2 = 'http://server2/resource';

    // Send to server 1
    request.post(url1, dataToSend, function(err, response, body){
        if(err) return callback(err);
        // Make the second call
        request.post(url2, dataToSend, function(err2, response2, body2){
         if(err2) return callback(err2);
         // Both calls are now complete
         callback(null);
    });
}

如果您需要进行两次以上的调用,下面的代码将变得混乱,因此您可能需要创建一个makeRequest函数,该函数接收要调用的URL和作为参数的数据,并在循环中调用它

否,这是不可能的。单请求单响应。但在量子物理中可能是这样。是否有其他解决方案注意在节点JS中执行此操作您希望如何在浏览器中执行此操作?不是在浏览器中…这是服务器端请求实际上,301重定向由浏览器处理;服务器抛出HTTP 301错误,浏览器接收该错误并重定向到指示的URL。此外,HTTP 301错误只允许重定向到单个URL.有其他选择,但首先我们必须了解你的意图。