下面几种写法可供参考:
1.
@RequestMapping("/pay")
public String pay(HttpServletRequest request, HttpServletResponse response){
String userAgent = request.getHeader("user-agent");
if (userAgent != null && userAgent.contains("MicroMessenger")){
System.out.println("微信支付");
}else if (userAgent !=null && userAgent.contains("AlipayClient")){
System.out.println("支付宝支付");
}
System.out.println(userAgent);
return null;
}
2.
public String pay1() {
//下面四行用不到,暂存
//ActionContext ctx = ActionContext.getContext();
//ServletContext servletContext = ServletActionContext.getServletContext();
//request.getSession();
//HttpServletResponse response = ServletActionContext.getResponse();
//判断是支付宝扫码还是微信扫码
HttpServletRequest request = ServletActionContext.getRequest();
String userAgent = request.getHeader("user-agent");
if (userAgent != null && userAgent.contains("MicroMessenger")){
System.out.println("微信支付");
}else if (userAgent !=null && userAgent.contains("AlipayClient")){
System.out.println("支付宝支付");
}
System.out.println(userAgent);
return null;
}
3.JS中判断是微信还是支付宝打开页面
function isWeiXin(){
var ua = window.navigator.userAgent.toLowerCase();
//微信
if(ua.match(/MicroMessenger/i) == 'micromessenger' || ua.match(/_SQ_/i) == '_sq_'){
return true;
}
//支付宝
if(ua.match(/AlipayClient/i) == 'alipayclient'){
return true;
}
}