在三種狀況下,request.getHeader("REFERER")取值
1:經過連接跳過來
2:在地址欄中輸入URL,打回車
3:刷新
當連接過來的時候,referer的值是連接過來的頁面的URL,正常。我刷新的時候referer的值沒有變,但當我在地址欄中打回車(URL沒有改變,只是打回車),referer值卻變成NULL了。
1):連接過來和在地址欄中直接輸入URL,有沒有什麼區別?若是有,有什麼區別?
2):刷新的時候URL爲何不變,爲何仍是前一個URL地址,爲何不變成當前的URL?
3):直接輸入爲何得不到 <%=request.getHeader("REFERER")的值?
若是是直接在瀏覽器裏輸入有referer的頁面,返回是null,也就是說referer只有從別的頁面點擊鏈接來到這頁的纔會有內容。爲NULL就是手工,非null就是鏈接過來的。刷新的時候,會檢查服務端是否會有更新,沒有的話,則使用本機的緩存,也就是說,你刷新時獲得的響應依然是
前一次獲得的服務端的內容,由於你的jsp文件沒有變化。
referer是從哪裏來的,也就是前一個頁面。回車,則沒有之前的,等同於你新打開一個瀏覽器,再次輸入同樣 。刷新,就是重複上一次的操做。
request.getHeader() 相關詳細html
//獲取客戶端向服務器端傳送數據的協議名稱瀏覽器
System.out.println("rotocol: " + request.getProtocol()); 緩存
//返回的協議名稱.默認是http
System.out.println("Scheme: " + request.getScheme()); 服務器
//能夠返回當前頁面所在的服務器的名字;若是你的應用部署在本機那麼其就返回localhost或者127.0.0.1 ,這兩個是等價的網絡
System.out.println("Server Name: " + request.getServerName() );session
//能夠返回當前頁面所在的服務器使用的端口,就是8083
System.out.println("Server Port: " + request.getServerPort());
//request.getRemoteAddr()是得到客戶端的ip地址
System.out.println("Remote Addr: " + request.getRemoteAddr()); app
//request.getRemoteHost()是得到客戶端的主機名。
System.out.println("Remote Host: " + request.getRemoteHost()); jsp
//返回字符編碼
System.out.println("Character Encoding: " + request.getCharacterEncoding()); 編碼
System.out.println("Content Length: " + request.getContentLength()); xml
//定義網絡文件的類型和網頁的編碼,決定瀏覽器將以什麼形式、什麼編碼讀取這個文件,
System.out.println("Content Type: "+ request.getContentType());
//若是servlet由一個鑑定方案所保護,如HTTP基本鑑定,則返回方案名稱
System.out.println("Auth Type: " + request.getAuthType());
//返回HTTP請求方法(例如GET、POST等等)
System.out.println("HTTP Method: " + request.getMethod());
//返回在URL中指定的任意附加路徑信息。
System.out.println("path Info: " + request.getPathInfo());
//返回在URL中指定的任意附加路徑信息,被子轉換成一個實際路徑
System.out.println("path Trans: " + request.getPathTranslated());
//返回查詢字符串,即URL中?後面的部份。
System.out.println("Query String: " + request.getQueryString());
//若是用戶經過鑑定,返回遠程用戶名,不然爲null。
System.out.println("Remote User: " + request.getRemoteUser());
//返回客戶端的會話ID
System.out.println("Session Id: " + request.getRequestedSessionId());
//返回URL中一部分,從「/」開始,包括上下文,但不包括任意查詢字符串。
System.out.println("Request URI: " + request.getRequestURI());
//返回請求URI上下文後的子串
System.out.println("Servlet Path: " + request.getServletPath());
//返回指定的HTTP頭標指。若是其由請求給出,則名字應爲大小寫不敏感。
System.out.println("Accept: " + request.getHeader("Accept"));
System.out.println("Host: " + request.getHeader("Host"));
System.out.println("Referer : " + request.getHeader("Referer"));
System.out.println("Accept-Language : " + request.getHeader("Accept-Language"));
System.out.println("Accept-Encoding : " + request.getHeader("Accept-Encoding"));
System.out.println("User-Agent : " + request.getHeader("User-Agent"));
System.out.println("Connection : " + request.getHeader("Connection"));
System.out.println("Cookie : " + request.getHeader("Cookie"));
System.out.println("Created : " + session.getCreationTime());
System.out.println("LastAccessed : " + session.getLastAccessedTime());
//若是在地址欄中輸入URL,打回車,地址 http://localhost:7080/nadlibrary/book/user/booklist
rotocol: HTTP/1.1
Scheme: http
Server Name: localhost
Server Port: 7080
Remote Addr: 127.0.0.1
Remote Host: 127.0.0.1
Character Encoding: utf8
Content Length: -1
Content Type: null
Auth Type: null
HTTP Method: GET
path Info: null
path Trans: null
Query String: null
Remote User: null
Session Id: E2D9AD01880BDC232A134FFCCE280941
Request URI: /nadlibrary/book/user/booklist
Servlet Path: /book/user/booklist
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Host: localhost:7080
Referer : null
Accept-Language : zh-CN,zh;q=0.8
Accept-Encoding : gzip,deflate,sdch
User-Agent : Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17
Connection : keep-alive
Cookie : JSESSIONID=E2D9AD01880BDC232A134FFCCE280941
Created : 1358671508064
LastAccessed : 1358671508517
若是超連接(上一個頁面是http://localhost:7080/nadlibrary/index經過這個頁面上的超連接訪問http://localhost:7080/nadlibrary/book/user/booklist)
rotocol: HTTP/1.1
Scheme: http
Server Name: localhost
Server Port: 7080
Remote Addr: 127.0.0.1
Remote Host: 127.0.0.1
Character Encoding: utf8
Content Length: -1
Content Type: null
Auth Type: null
HTTP Method: GET
path Info: null
path Trans: null
Query String: null
Remote User: null
Session Id: C458CE3A2B03AFA4C2AE1497036221CD
Request URI: /nadlibrary/book/user/booklist
Servlet Path: /book/user/booklist
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Host: localhost:7080
Referer : http://localhost:7080/nadlibrary/index
Accept-Language : zh-CN,zh;q=0.8
Accept-Encoding : gzip,deflate,sdch
User-Agent : Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17
Connection : keep-alive
Cookie : JSESSIONID=C458CE3A2B03AFA4C2AE1497036221CD
Created : 1358671583536
LastAccessed : 1358671583958