某些情形,咱们须要判断Http请求是来自手机端仍是电脑端,关键是取得User-Agent的信息,进行筛选判断便可。
java
核心类以下:android
public static boolean isMobileDevice(String requestHeader){ /** * android : 全部android设备 * mac os : iphone ipad * windows phone:Nokia等windows系统的手机 */ String[] deviceArray = new String[]{"android","mac os","windows phone"}; if(requestHeader == null) return false; requestHeader = requestHeader.toLowerCase(); for(int i=0;i<deviceArray.length;i++){ if(requestHeader.indexOf(deviceArray[i])>0){ return true; } } return false; }
在controller中获取http头信息以下:web
String requestHeader = request.getHeader("user-agent"); if(JudgeRequestDeviceUtil.isMobileDevice(requestHeader)){ logger.debug("使用手机浏览器"); }else{ logger.debug("使用web浏览器"); }