2020久久超碰欧美精品最新亚洲欧美日韩久久精品,国产福利电影一区二区三区,亚洲欧美日韩一区在线观看,亚洲国产欧美日韩欧美特级,亚洲欧美日韩成人一区久久,欧美日韩精品一区二区三区不卡,国产欧美日韩va另类影音先锋,亚洲欧美日韩久久精品,亚洲欧美日韩国产成人精品影院,亚洲国产欧美日韩精品一区二区三区,欧美日韩国产成人高清视频,日韩久久精品国产免费观看频道,久久人人爽人人爽从片av高清,国产精品综合一区二区

首頁常見問題正文

header和headerValues對象的區別是什么?

更新時間:2023-01-29 來源:黑馬程序員 瀏覽量:

IT培訓班

  當客戶端訪問Web服務器中的JSP頁面時,會通過請求消息頭傳遞一些信息,例如請求消息頭中的“User-Agent”字段可以告訴服務器瀏覽器的類型。為了獲取請求消息頭中的信息,EL表達式提供了兩個隱式對象header和headerValues,接下來,針對這兩個對象進行詳細講解,具體如下。

  1.header對象

  header對象用于獲取請求頭字段的某個值,具體示例如下。

   ${header["user- agent"]}

  2.headerValues對象

    ${headerValues["Accept- language"] [0]}

  如果一個請求頭字段有多個值,可以使用headerValues對象,該對象用于返回請求頭字符的所有值組成的數組,如果要獲取某個請求頭字段的第一個值,可以使用如下代碼。

  為了讓大家更好地學習這兩個隱式對象,接下來通過一個案例來演示header和headerValues隱式對象如何獲取請求參數的值,如例7-8所示。

  例7-8 header.jsp

<%@page language="java" contentType="text/html;charset=utf-8"
   pageEncoding="utf-8" import="java.util.*"%>
<html>
<head></head>
<body>
   header.host:${Headers.host}
   headerValues["Accept-Language"]:${headerValues["Accept-Language"] [0]}
   headerValues["Accept-Language"]:${headerValues["Accept-Language"] [1]}
</body>
 </html>


  由于請求消息頭中Accept-Language頭字段的格式為zh-cn,zh;q=0,8,en-us;q=0.5,en;q=0.3,因此,使用headerValues對象只能獲取到一個值zh-cn,假設將Accept-Language頭字段賦予多個值,具體代碼如下。

 GET/chapter07/header.jsp HTTP/1.1
 Host:localhost:8080
 Accept-language:zh-cn 
 Accept-language:en-us

  此時,使用headerValues對象便可以獲取Accept-Language頭字段的多個值,獲取到的結果如下。

 header.host:localhost:8080
 headerValues["Accept-Language"]:zh-cn 
 headerValues["Accept-Language"]:en-us

  需要注意的是,如果一個請求頭字段有多個值,那么在使用header獲取請求參數時,則返回請求頭字段的第一個值。

分享到:
在線咨詢 我要報名
和我們在線交談!