Express res.redirect不redirect
我在快速使用res.redirect()时遇到了麻烦。
我曾试着寻找其他问题,但答案并不能真正涵盖我的具体问题,或者至less是不够的。
app.get(/\d\w*/g, function (req, res, next) { urlCreator.findURL(req.originalUrl,function(smallURL){ if (smallURL === "Small URL doesn't exist"){ res.send(smallURL); } else { res.redirect(smallURL); } });
});
当else块中的res.redirect()达到时,我在浏览器(下面的屏幕截图)中得到这个,而不是redirect到所需的页面。 smallUrl的格式是例如“www.facebook.com”
浏览器响应
我是否错过了为什么浏览器不会简单地redirect并显示这个呢?
你错过了协议。 如果您省略http://
或https://
,则浏览器将redirect视为本地资源的名称 – 而您没有名为/www.facebook.com
。
所以,只需在协议前加上url,你就可以了:-)