如何从发出请求的设备中检测是电脑还是手机
如何检测请求的设备是电脑还是手机
有一个 npm 模块叫做 device,可以根据请求的 user agent 来判断设备类型。可以自己写正则表达式,也可以使用这个模块。以下是示例代码:
var device = require('device') app.get('/', function(req, res) { var ua = req.headers['user-agent']; if(device.is('phone')){ console.log('设备是手机'); }else if(device.is('tablet')){ console.log('设备是平板'); }else if(device.is('desktop')){ console.log('设备是电脑'); }else { console.log('设备是其他类型'); } });
需要注意的是,各种浏览器允许用户修改 user agent 字符串来伪装成其他浏览器。
但是,服务器无法确定用户设备的尺寸。
如果你在使用 PHP 而不是 Node.js,那么这段代码将无法使用。你需要在 PHP 中使用类似的方法进行判断。