Und*_*ior 30 user-agent node.js express
我开始使用包"ua-parser"但是创建者太忙而无法保密或提交... npm ua-parser已经过时,需要直接从github下载.有人知道像ua-parser这样的其他优秀软件包已经更新并可以与expressjs一起使用吗?或者有办法处理expressjs?
tpa*_*pae 47
你看过了吗:
或者,编写自己的中间件:
app.use(function(req, res, next) {
res.locals.ua = req.get('User-Agent');
next();
});
Run Code Online (Sandbox Code Playgroud)
参考:从jade中获取用户代理
Joh*_*ams 25
有两种一般情况,你只需要简单的匹配,而你不需要一个模块,你可以在Node中使用正则表达式.
var isIpad = !!req.headers['user-agent'].match(/iPad/);
var isAndroid = !!req.headers['user-agent'].match(/Android/);
==> true, false
Run Code Online (Sandbox Code Playgroud)
另外,如果你需要一个很好的浏览器类型的干净输出,这对我来说效果最好. https://www.npmjs.org/package/useragent
我对 Express 的最佳解决方案...轻量级/快速! https://www.npmjs.com/package/express-useragent
app.use(require('express-useragent').express())
Run Code Online (Sandbox Code Playgroud)
你的中间件...
app.use(function(req, res, next) {
req.session.useragent = {
browser: req.useragent.browser,
version: req.useragent.version,
os: req.useragent.os,
platform: req.useragent.platform
}
console.log(JSON.stringify(req.session.useragent, null ,4))
next()
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
38152 次 |
| 最近记录: |