我目前有res.redirect('/login')
但这不适用于不支持pushState的浏览器。因此,我需要一种方法来检测用户浏览器,以便我可以使用res.redirect('/#login')
重定向不支持pushState的浏览器。
如何在Nodejs中检测用户浏览器是否支持pushState?
答案 0 :(得分:0)
您可以实施ua-parser,然后使用Can I use... matrix来构建支持它的浏览器版本。它不是很理想,但我想不出另一种从节点进行特征检测的方法。
答案 1 :(得分:0)
您可以使用cookie将该值传输到服务器。否则,很难区分客户端(例如,如果您想发送包含相关数据的HTTP请求)。要接收cookie,您需要在设置后发送HTTP请求。
使用用户代理检测功能不是面向未来的,请不要这样做。
作为旁注:Twitter最近取消了对哈希爆炸的支持后,您可以继续支持这种伟大的方式来显示用户在网页上的位置。 (说真的,不要这样做。)