Node.js判断Android与iOS浏览器
Yourtion 创作于:2013-03-27
全文约 1236 字,
预计阅读时间为 4 分钟
最近在做微信公众账号相关的一些东西,然后遇到对用户浏览器判断的问题,因为想在服务器端得到相应的结果并返回不同的URL,所以就写了使用node.js
判断Android与iOS浏览器的function
,和大家共享。
function brows()
还有使用代码如下:
var http = require('http');
function brows($agent){//移动终端浏览器版本信息
return {
ios: !!$agent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
android: $agent.indexOf('Android') > -1 || $agent.indexOf('Linux') > -1, //android终端或者uc浏览器
iPhone: $agent.indexOf('iPhone') > -1 || $agent.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器
iPad: $agent.indexOf('iPad') > -1, //是否iPad
}
}
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
$a=brows(req.headers['user-agent']);
console.log($a);
$url="";
if ($a.iPad)//当ipad终端时
{$url = 'http://blog.yourtion.com/ipad';}
else if ($a.iPhone)//当iphone终端时
{$url = 'http://blog.yourtion.com/ios/'; }
else if ($a.ios)//当ios终端时
{$url = 'http://blog.yourtion.com/ios/'; }
else if ($a.android) //当Android终端时
{$url = 'http://blog.yourtion.com/android/';}
else//否则
$url = 'http://blog.yourtion.com/wap/';
res.end($url);
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');
事实上方法也很简单,就是将request.headers['user-agent']
字段传入进行判断就OK了。
原文链接:https://blog.yourtion.com/node-js-judge-android-and-ios.html