黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

JSP教程
JSP高級教程

JSP客戶端請求

當瀏覽器請求一個網頁時,它會向網絡服務器發送一系列不能被直接讀取的信息,因為這些信息是作為HTTP信息頭的一部分來傳送的。您可以查閱HTTP協議來獲得更多的信息。

下表列出了瀏覽器端信息頭的一些重要內容,在以后的網絡編程中將會經常見到這些信息:

信息

描述

Accept

指定瀏覽器或其他客戶端可以處理的MIME類型。它的值通常為 image/png 或 image/jpeg

Accept-Charset

指定瀏覽器要使用的字符集。比如 ISO-8859-1

Accept-Encoding

指定編碼類型。它的值通常為 gzip 或compress

Accept-Language

指定客戶端首選語言,servlet會優先返回以當前語言構成的結果集,如果servlet支持這種語言的話。比如 en,en-us,ru等等

Authorization

在訪問受密碼保護的網頁時識別不同的用戶

Connection

表明客戶端是否可以處理HTTP持久連接。持久連接允許客戶端或瀏覽器在一個請求中獲取多個文件。Keep-Alive 表示啟用持久連接

Content-Length

僅適用于POST請求,表示 POST 數據的字節數

Cookie

返回先前發送給瀏覽器的cookies至服務器

Host

指出原始URL中的主機名和端口號

If-Modified-Since

表明只有當網頁在指定的日期被修改后客戶端才需要這個網頁。 服務器發送304碼給客戶端,表示沒有更新的資源

If-Unmodified-Since

與If-Modified-Since相反, 只有文檔在指定日期后仍未被修改過,操作才會成功

Referer

標志著所引用頁面的URL。比如,如果你在頁面1,然后點了個鏈接至頁面2,那么頁面1的URL就會包含在瀏覽器請求頁面2的信息頭中

User-Agent

用來區分不同瀏覽器或客戶端發送的請求,并對不同類型的瀏覽器返回不同的內容

HttpServletRequest類

request對象是javax.servlet.http.HttpServletRequest類的實例。每當客戶端請求一個頁面時,JSP引擎就會產生一個新的對象來代表這個請求。

request對象提供了一系列方法來獲取HTTP信息頭,包括表單數據,cookies,HTTP方法等等。

接下來將會介紹一些在JSP編程中常用的獲取HTTP信息頭的方法。詳細內容請見下表:

序號

方法& 描述

1

Cookie[] getCookies()

返回客戶端所有的Cookie的數組

2

Enumeration getAttributeNames()

返回request對象的所有屬性名稱的集合

3

Enumeration getHeaderNames()

返回所有HTTP頭的名稱集合

4

Enumeration getParameterNames()

返回請求中所有參數的集合

5

HttpSession getSession()

返回request對應的session對象,如果沒有,則創建一個

6

HttpSession getSession(boolean create)

返回request對應的session對象,如果沒有并且參數create為true,則返回一個新的session對象

7

Locale getLocale()

返回當前頁的Locale對象,可以在response中設置8Object

8

getAttribute(String name)

返回名稱為name的屬性值,如果不存在則返回null。

9

ServletInputStream getInputStream()

返回請求的輸入流

10

String getAuthType()

返回認證方案的名稱,用來保護servlet,比如 "BASIC" 或者 "SSL" 或 null 如果 JSP沒設置保護措施

11

String getCharacterEncoding()

返回request的字符編碼集名稱

12

String getContentType()

返回request主體的MIME類型,若未知則返回null

13

String getContextPath()

返回request URI中指明的上下文路徑

14

String getHeader(String name)

返回name指定的信息頭

15

String getMethod()

返回此request中的HTTP方法,比如 GET,,POST,或PUT

16

String getParameter(String name)

返回此request中name指定的參數,若不存在則返回null

17

String getPathInfo()

返回任何額外的與此request URL相關的路徑

18

String getProtocol()

返回此request所使用的協議名和版本

19

String getQueryString()

返回此 request URL包含的查詢字符串

20

String getRemoteAddr()

返回客戶端的IP地址

21

String getRemoteHost()

返回客戶端的完整名稱

22

String getRemoteUser()

返回客戶端通過登錄認證的用戶,若用戶未認證則返回null

23

String getRequestURI()

返回request的URI

24

String getRequestedSessionId()

返回request指定的session ID

25

String getServletPath()

返回所請求的servlet路徑

26

String[] getParameterValues(String name)

返回指定名稱的參數的所有值,若不存在則返回null

27

boolean isSecure()

返回request是否使用了加密通道,比如HTTPS

28

int getContentLength()

返回request主體所包含的字節數,若未知的返回-1

29

int getIntHeader(String name)

返回指定名稱的request信息頭的值

30

int getServerPort()

返回服務器端口號

HTTP信息頭示例

在這個例子中,我們會使用HttpServletRequest類的getHeaderNames()方法來讀取HTTP信息頭。這個方法以枚舉的形式返回當前HTTP請求的頭信息。

獲取Enumeration對象后,用標準的方式來遍歷Enumeration對象,用hasMoreElements()方法來確定什么時候停止,用nextElement()方法來獲得每個參數的名字。

<%@ page import="java.io.*,java.util.*" %>
<html>
<head>
<title>HTTP Header Request Example</title>
</head>
<body>
<center>
<h2>HTTP Header Request Example</h2>
<table width="100%" border="1" align="center">
<tr bgcolor="#949494">
<th>Header Name</th><th>Header Value(s)</th>
</tr>
<%    Enumeration headerNames = request.getHeaderNames();    while(headerNames.hasMoreElements()) {       String paramName = (String)headerNames.nextElement();       out.print("<tr><td>" + paramName + "</td>\n");
      String paramValue = request.getHeader(paramName);
      out.println("<td> " + paramValue + "</td></tr>\n");
   }
%>
</table>
</center>
</body>
</html>

訪問main.jsp,將會得到以下結果:

HTTP Header Request Example

Header Name

Header Value(s)

accep

t*/*

accept-language 

en-us

user-agent

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; InfoPath.2; MS-RTC LM 8)

accept-encoding

gzip, deflate

host

localhost:8080

connection

Keep-Alive

cache-control

no-cache

您可以在上面代碼中嘗試HttpServletRequest類的其它方法。

全部教程
主站蜘蛛池模板: 在线观看日本亚洲一区 | 国内外一级毛片 | 欧美成人在线观看 | 中文字幕视频在线播放 | 欧美日韩精品免费一区二区三区 | 欧美久久天天综合香蕉伊 | 中文字幕日本一区 | 国产后式a一视频 | 国产在线综合一区二区三区 | 欧美xxx在线 | 精品欧美日韩一区二区 | 色综合色狠狠天天综合色hd | 91麻豆精品一二三区在线 | 午夜成年免费观看视频 | 天天摸天天干 | 一国产大片在线观看 | 午夜激情在线视频 | 欧美一区二区三区视频在线观看 | 伊人天堂在线 | 一级α一级α片免费观看网站 | 久热久草| 曰本女人与动牲交毛片 | 能在线观看的一区二区三区 | 日日干日日操日日射 | 成人在线免费视频播放 | 国产综合精品日本亚洲777 | 精品三区| 操干视频 | 亚洲欧洲日产国码 最新 | 亚洲成a人片在线观看播放 亚洲成精品动漫久久精久 亚洲大尺度 | 国产欧美性综合视频性刺激 | 在线视频一区二区 | 天天成人 | 麻豆精品成人免费国产片 | 2018精品国产一区二区 | 色噜噜狠狠狠狠色综合久 | 午夜视频十八嗯嗯啊免费 | 91香蕉视频污在线观看 | 欧美日韩综合高清一区二区 | 本道久久综合88全国最大色 | 亚洲精品永久www嫩草 |