Http常見的請求引數

2021-07-24 15:20:08 字數 3440 閱讀 8561

一、http最常見的請求頭如下:

laccept:瀏覽器可接受的mime型別;

laccept-charset:瀏覽器可接受的字符集;ll

accept-language:瀏覽器所希望的語言種類,當伺服器能夠提供一種以上的語言版本時要用到;

lauthorization:授權資訊,通常出現在對伺服器傳送的www-authenticate頭的應答中;ll

content-length:表示請求訊息正文的長度;

lcookie:這是最重要的請求頭資訊之一;ll

host:初始url中的主機和埠;

lif-modified-since:只有當所請求的內容在指定的日期之後又經過修改才返回它,否則返回304「not modified」應答;

lpragma:指定「no-cache」值表示伺服器必須返回乙個重新整理後的文件,即使它是**伺服器而且已經有了頁面的本地拷貝;

lreferer:包含乙個url,使用者從該url代表的頁面出發訪問當前請求的頁面。

luser-agent:瀏覽器型別,如果servlet返回的內容與瀏覽器型別有關則該值非常有用;

lua-pixels,ua-color,ua-os,ua-cpu:由某些版本的ie瀏覽器所傳送的非標準的請求頭,表示螢幕大小、顏色深度、作業系統和cpu型別。

二、響應頭

http最常見的響應頭如下所示:

lallow:伺服器支援哪些請求方法(如get、post等);ll

content-length:表示內容長度。只有當瀏覽器使用持久http連線時才需要這個資料。如果你想要利用持久連線的優勢,可以把輸出文件寫入bytearrayoutputstram,完成後檢視其大小,然後把該值放入content-length頭,最後通過bytearraystream.writeto(response.getoutputstream()傳送內容;

lcontent-type: 表示後面的文件屬於什麼mime型別。servlet預設為text/plain,但通常需要顯式地指定為text/html。由於經常要設定content-type,因此httpservletresponse提供了乙個專用的方法setcontenttyep。 可在web.xml檔案中配置副檔名和mime型別的對應關係;

ldate:當前的gmt時間。你可以用setdateheader來設定這個頭以避免轉換時間格式的麻煩;

lexpires:指明應該在什麼時候認為文件已經過期,從而不再快取它。

llast-modified:文件的最後改動時間。客戶可以通過if-modified-since請求頭提供乙個日期,該請求將被視為乙個條件get,只有改動時間遲於指定時間的文件才會返回,否則返回乙個304(not modified)狀態。last-modified也可用setdateheader方法來設定;

llocation:表示客戶應當到**去提取文件。location通常不是直接設定的,而是通過httpservletresponse的sendredirect方法,該方法同時設定狀態**為302;

lrefresh:表示瀏覽器應該在多少時間之後重新整理文件,以秒計。除了重新整理當前文件之外,你還可以通過setheader("refresh", "5; url=http://host/path

")讓瀏覽器讀取指定的頁面。注意這種功能通常是通過設定html頁面head區的http://host/path

">實現,這是因為,自動重新整理或重定向對於那些不能使用cgi或servlet的html編寫者十分重要。但是,對於servlet來說,直接設定refresh頭更加方便。注意refresh的意義是「n秒之後重新整理本頁面或訪問指定頁面」,而不是「每隔n秒重新整理本頁面或訪問指定頁面」。因此,連續重新整理要求每次都傳送乙個refresh頭,而傳送204狀態**則可以阻止瀏覽器繼續重新整理,不管是使用refresh頭還是。注意refresh頭不屬於http 1.1正式規範的一部分,而是乙個擴充套件,但netscape和ie都支援它。

三、實體頭

實體頭用坐實體內容的元資訊,描述了實體內容的屬性,包括實體資訊型別,長度,壓縮方法,最後一次修改時間,資料有效性等。

lallow:get,post

lcontent-encoding:文件的編碼(encode)方法,例如:gzip,見「2.5 響應頭」;

lcontent-language:內容的語言型別,例如:zh-cn;ll

content-location:表示客戶應當到**去提取文件,例如:可參考「2.5響應頭」;

lcontent-md5:md5 實體的一種md5摘要,用作校驗和。傳送方和接受方都計算md5摘要,接受方將其計算的值與此頭標中傳遞的值進行比較。eg1:content-md5: 。eg2:dfdfdfdfdfdfdff==;

lcontent-range:隨部分實體一同傳送;標明被插入位元組的低位與高位位元組偏移,也標明此實體的總長度。eg1:content-range: 1001-2000/5000,eg2:bytes 2543-4532/7898

lcontent-type:標明傳送或者接收的實體的mime型別。eg:text/html; charset=gb2312      主型別/子型別;

lexpires:為0證明不快取;

llast-modified:web 伺服器認為物件的最後修改時間,比如檔案的最後修改時間,動態頁面的最後產生時間等等。例如:last-modified:tue, 06 may 2008 02:42:43 gmt.

四、擴充套件頭

在http訊息中,也可以使用一些再http1.1正式規範裡沒有定義的頭字段,這些頭欄位統稱為自定義的http頭或者擴充套件頭,他們通常被當作是一種實體頭處理。

現在流行的瀏覽器實際上都支援cookie,set-cookie,refresh和content-disposition等幾個常用的擴充套件頭欄位。

lrefresh:1;url=  //過1秒跳轉到指定位置;ll

content-type:web 伺服器告訴瀏覽器自己響應的物件的型別。

http請求引數

http請求中不同的請求方式和設定不同的content type時,傳遞引數的方式會不一樣,引數的三種形式 query string parameters form data request payload get請求會出現query string parameters請求體 get請求時,引數會以...

常見的HTTP請求頭

當瀏覽器傳送請求給伺服器時,根據功能需求的不同,傳送的請求訊息頭也不相同,以下是一些方勇的請求頭欄位 tocm 1.acceptaccept 頭欄位用於指出客戶端程式 通常是瀏覽器 能夠處理的 mime multipurpose internet mail extensions,多用途網際網路郵件擴...

常見的http請求方法

注 post和put patch的區別 重要概念 冪等性 就是重複的去執行每乙個操作,結果都是一樣的。例如 你發get請求,不管你發多少次,它返回的結果都是一樣的,所以get請求具有冪等性。post請求不具備冪等性,而put和patch具備冪等性。這就是二者的區別。例如有乙個介面,用於修改部落格或者...