Java 如何知道网站是否通过移动设备访问
我在asp.net中得到了这个问题,但我正在搜索Java 如何知道网站是否通过移动设备访问,java,scala,playframework,request,Java,Scala,Playframework,Request,我在asp.net中得到了这个问题,但我正在搜索Scala或Java: 有没有办法或者我在手机请求的请求浏览器中设置 def check = Action { implicit request => try{ println(request.headers) Ok(write(Map("result"->true))) }catch{ case e:Exception=> Ok(write(Map("res
Scala
或Java
:
有没有办法或者我在手机请求的请求浏览器中设置
def check = Action { implicit request =>
try{
println(request.headers)
Ok(write(Map("result"->true)))
}catch{
case e:Exception=>
Ok(write(Map("result"->false)))
}
}
我试图从网络和iphone及android上获得上述信息
WEB-FIREFOX
ArrayBuffer((Connection,ArrayBuffer(keep-alive)), (Accept,ArrayBuffer(text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8)), (Accept-Language,ArrayBuffer(en-US,en;q=0.5)), (Accept-Encoding,ArrayBuffer(gzip, deflate)), (User-Agent,ArrayBuffer(Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:28.0) Gecko/20100101 Firefox/28.0)), (Host,ArrayBuffer(14.155.235.97:9000)))
WEB\u CHROME
ArrayBuffer((Connection,ArrayBuffer(keep-alive)), (Accept,ArrayBuffer(text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8)), (Accept-Language,ArrayBuffer(en-US,en;q=0.8)), (Accept-Encoding,ArrayBuffer(gzip,deflate,sdch)), (User-Agent,ArrayBuffer(Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.152 Safari/537.36)), (Host,ArrayBuffer(14.155.235.97:9000)))
IPHONE
ArrayBuffer((Connection,ArrayBuffer(keep-alive)), (Accept,ArrayBuffer(*/*)), (Accept-Language,ArrayBuffer(en-us)), (Accept-Encoding,ArrayBuffer(gzip, deflate)), (User-Agent,ArrayBuffer(WinChat/1.0 CFNetwork/672.0.8 Darwin/14.0.0)), (Host,ArrayBuffer(14.155.235.97:9000)))
ANDROID
ArrayBuffer((User-Agent,ArrayBuffer(Apache-HttpClient/UNAVAILABLE (java 1.4))), (resource,ArrayBuffer(android)), (Connection,ArrayBuffer(Keep-Alive)), (Host,ArrayBuffer(14.155.235.97:9000)))
浏览器信息包含在HTTP标头的字段中。在Java中,要从HTTPServletRequest获取用户代理信息,您需要执行以下操作:
String userAgent=request.getHeader("User-Agent");
这将返回如下内容:
Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405
然后,您可以分析返回的字符串,以确定用户代理是否在移动设备上。有一些库可以做到这一点。您可以用来解析用户代理头。通过使用,您可以检测它是否来自智能手机
它在Apache许可证2.0下免费提供。您能提供更多详细信息吗,比如您使用什么类来表示请求?@Nonos我添加了一些代码,请查看我的更新问题我更新了我的问题,请查看。通过
USER-AGENT
我遇到了困难,它可以免费使用吗?或者它有一些隐藏的电荷?嗯,我应用了它,但是遇到了一些问题,如果你能让我检查一下这个问题的话