国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

在Servlet中使用請求頭

2019-11-18 15:23:35
字體:
供稿:網(wǎng)友

  Request Header簡介
當(dāng)一個客戶端(通常是瀏覽器)向Web服務(wù)器發(fā)送一個請求是,它要發(fā)送一個請求的命令行,一般是GET或POST命令,當(dāng)發(fā)送POST命令時,它還必須向服務(wù)器發(fā)送一個叫“Content-Length”的請求頭(Request Header) 用以指明請求數(shù)據(jù)的長度,除了Content-Length之外,它還可以向服務(wù)器發(fā)送其它一些Headers,如:

Accept 瀏覽器可接受的MIME類型
Accept-Charset 瀏覽器支持的字符編碼
Accept-Encoding 瀏覽器知道如何解碼的數(shù)據(jù)編碼類型(如 gzip)。Servlets 可以預(yù)先檢查瀏覽器是否支持gzip并可以對支持gzip的瀏覽器返回gzipped的Html頁面,并設(shè)置Content-Encoding回應(yīng)頭(response header)來指出發(fā)送的內(nèi)容是已經(jīng)gzipped的。在大多數(shù)情況下,這樣做可以加快網(wǎng)頁下載的速度。
Accept-Language 瀏覽器指定的語言,當(dāng)Server支持多語種時起作用。
Authorization 認(rèn)證信息,一般是對服務(wù)器發(fā)出的WWW-Authenticate頭的回應(yīng)。
Connection 是否使用持續(xù)連接。假如servlet發(fā)現(xiàn)這個字段的值是Keep-Alive,或者由發(fā)出請求的命令行發(fā)現(xiàn)瀏覽器支持 HTTP 1.1 (持續(xù)連接是它的默認(rèn)選項),使用持續(xù)連接可以使保護很多小文件的頁面的下載時間減少。
Content-Length (使用POST方法提交時,傳遞數(shù)據(jù)的字節(jié)數(shù))
Cookie (很重要的一個Header,用來進行和Cookie有關(guān)的操作,具體的信息將在后面的教程中介紹)
Host (主機和端口)
If-Modified-Since (只返回比指定日期新的文檔,假如沒有,將會反回304 "Not Modified")
Referer (URL)
User-Agent (客戶端的類型,一般用來區(qū)分不同的瀏覽器)
假如你想更多的了解Request Header的內(nèi)容,你可以訪問W3C的網(wǎng)站。

在Servlet中讀取Request Header的內(nèi)容

在Servlet中讀取Request Header的值是很簡單的,只要調(diào)用HttpServletRequest的getHeader方法就可以了,當(dāng)你指定要返回的Header的名稱,該方法就會返回String類型的Header的內(nèi)容,假如指定的Header不存在,就返回null。調(diào)用getHeaderNames可以返回包含所有Header名字的Enumeration.

讀取所有Request Header值的Servlet程序

下面是Tomcat中所帶的Servlet例子中關(guān)于Request Header的例子,下載該程序。

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class RequestHeaderExample extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
response.setContentType("text/html");
PRintWriter out = response.getWriter();
Enumeration e = request.getHeaderNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
String value = request.getHeader(name);
out.println(name + " = " + value);
}
}
}

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 泗洪县| 保德县| 乌拉特后旗| 博客| 永德县| 易门县| 林西县| 武邑县| 廉江市| 璧山县| 隆化县| 佳木斯市| 苗栗县| 栾城县| 湖州市| 安吉县| 昌吉市| 乌兰察布市| 栾川县| 泰顺县| 资中县| 和顺县| 宁陕县| 鄂州市| 阿巴嘎旗| 万盛区| 公安县| 东丰县| 合江县| 潼南县| 石首市| 九台市| 中牟县| 怀化市| 博兴县| 化德县| 平安县| 进贤县| 江安县| 思南县| 巴里|