我正在尝试重定向到新网站并设置要发送到该网站的发布数据。我试过这个:
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(302, {"Location": "http://example.com/newpage/", "Content-Type": "application/x-www-form-urlencoded"});
res.end("param1=value1¶m2=value2");
}).listen(process.env.PORT, process.env.IP);
这是不成功的。如何重定向到新网站并设置POST数据?
答案 0 :(得分:0)
简单重定向无法与发布数据一起发送。 您必须发出新请求并传递给原始请求
http.createServer(function (req, res) {
var http = require('http');
var post_data = JSON.stringify({aaa: 'abc', bbb: 123});
var options = {
host: 'example.com',
port: '80',
path: '/',
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': post_data.length
};
var req = http.request(options, function(resp_new) {
resp_new.setEncoding('utf8');
resp_new.on('data', function(chunk){
res.send(chunk);
});
resp_new.on('end', function(){
res.end();
});
});
req.write(post_data);
req.end();
});