今天突然想到一个聚合二维码,微信和支付宝不同客户端扫能拉起不同的支付页面/或效果.看到网上基本上都是使用判断user-agent进行判断,可以使用前端/后端进行判断.
1.下面是前端JS伪代码示例:
//页面加载执行代码段
window.onload = function(){
var ua = window.navigator.userAgent;
if ( ua.indexOf('MicroMessenger') != -1 ) {
alert('wechatClient');
} else if (ua.indexOf('AlipayClient') != -1) {
alert('aliClient');
} else {
alert('other');
alert(ua);
}
}
2. 使用后端Java的伪代码示例:
@RequestMapping(value="getUserAgent")
@ResponseBody
public String getUserAgent(HttpServletRequest request){
//获取header中的属性
String userAgent = request.getHeader("user-agent");
if (userAgent != null && userAgent.contains("AlipayClient")) {
return "AliPay";
}else if (userAgent != null && userAgent.contains("MicroMessenger")) {
return "WeChat";
}else{
return "Other";
}
}
--------摸着石头过河的我,还在路上