Request Headers 請求頭參數的簡單理解及獲取
客戶端請求服務端時,會發送Request Headers即請求頭給服務端,Request Headers 聲明了請求的配置,全局的Token一般就保存在里面,下面是對參數的一些理解。
1、請求頭參數
- Accept: 告訴服務器,客戶機支持的數據類型
- Accept-Encoding: 告訴服務器,客戶機支持的數據壓縮格式
- Accept-Language:瀏覽器所希望的語言種類,當服務器能夠提供一種以上的語言版本時要用到
- Authorization:授權信息,通常出現在對服務器發送的WWW-Authenticate頭的應答中,一般用於保存Token
- Cache-Control:緩存控制,服務器通過控制瀏覽器要不要緩存數據
- Connection:表示是否需要持久連接。如果Servlet看到這里的值為“Keep-Alive”,或者看到請求使用的是HTTP 1.1(HTTP 1.1默認進行持久連接),它就可以利用持久連接的優點,當頁面包含多個元素時(例如Applet,圖片),顯著地減少下載所需要的時間
- Content-Length:表示請求消息正文的長度
- Content-Type: 表示請求的數據類型
- Host: 訪問的主機名和端口
- Origin: 發送請求的主機名和端口
- Pragma:指定“no-cache”值表示服務器必須返回一個刷新后的文檔,即使它是代理服務器而且已經有了頁面的本地拷貝
- Referer:包含一個URL,用戶從該URL代表的頁面出發訪問當前請求的頁面
- User-Agent:瀏覽器類型,如果Servlet返回的內容與瀏覽器類型有關則該值非常有用
2、請求頭獲取
Java 后台可以聲明 HttpServletRequest 參數獲取。
public void addSuggest(Suggest suggest, HttpServletRequest request) {
Integer userId = request.getIntHeader("uid");
//獲取瀏覽器版本
suggest.setUseragent(request.getHeader("User-Agent"));
}