一、User Agent的含義
User Agent中文名為用戶代理,簡稱 UA,它是一個特殊字符串頭,使得服務器能夠識別客戶使用的操作系統及版本、CPU 類型、瀏覽器及版本、瀏覽器渲染引擎、瀏覽器語言、瀏覽器插件等。
一些網站常常通過判斷 UA 來給不同的操作系統、不同的瀏覽器發送不同的頁面,因此可能造成某些頁面無法在某個瀏覽器中正常顯示,但通過偽裝 UA 可以繞過檢測。
瀏覽器的 UA 字串
標準格式為: 瀏覽器標識 (操作系統標識; 加密等級標識; 瀏覽器語言) 渲染引擎標識 版本信息
瀏覽器標識
由于很多網站在進行 UA 檢測的時候忽略了兩位數版本號,所以可能造成 瀏覽器及之后版本收到糟糕的頁面,因此自 瀏覽器 10 之后的版本中瀏覽器標識項固定為 瀏覽器,在 UA 字串尾部添加真實版本信息。
注:來源自百度百科
當在瀏覽器發起一個請求后,我們可以查看請求信息。
Request Headers:請求頭會包含請求信息。
二:獲得瀏覽器請求頭中的User-Agent
(1)請求
String userAgent = request.getHeader("user-agent");
(2)獲取
User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
三、UserAgentUtils.jar
UserAgentUtils.jar是UserAgent的工具類。
(1)maven
<!-- https://mvnrepository.com/artifact/eu.bitwalker/UserAgentUtils --> <dependency> <groupId>eu.bitwalker</groupId> <artifactId>UserAgentUtils</artifactId> <version>1.20</version> </dependency>
(2)java代碼
UserAgent userAgent = UserAgent.parseUserAgentString(request.getHeader("User-Agent"));
Browser browser = userAgent.getBrowser();
OperatingSystem os = userAgent.getOperatingSystem();
參考文章:
java 獲取HttpRequest Header的幾種方法(必看篇)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。