我正在请求example.com,而不是将其重定向到具有301或302状态的www.example.com,然后我从www.example.com获得代码为200的响应。我希望所有状态不仅仅是最后一个。我在节点服务器中使用'request'模块。 这是我的代码
app.post("/check", function(req, res) {
var link = req.body.url;
var opts = {
uri: link,
gzip: true,
followRedirect :function (resp) {
return true;
}
};
request(opts, function (error, res, body) {
if (res.statusCode > 300 && res.statusCode < 400 && res.headers.location) {
if (url.parse(res.headers.location).hostname) {
} else {
}
}
答案 0 :(得分:0)
不完全确定你想要输出的是什么,但试试这个:
app.post("/check", function(req, res) {
var link = req.body.url;
var redirectCodes = [];
var opts = {
uri: link,
gzip: true,
followRedirect :function (resp) {
redirectCodes.push(resp.statusCode);
return true;
}
};
request(opts, function (error, res, body) {
res.end(JSON.stringify({
body: body,
redirectCodes: redirectCodes
}, null, 2));
}
});