servlet客戶端http請求
當瀏覽器傳送請求到伺服器的時候,這個請求是不能被直接讀取的,請求中包含了非常多的資訊,而需要被讀取的,只是請求中的一部分。
如圖
我們可以看一下請求頭有哪些常用的資訊,以及它們的作用是什麼
accept-charset
這個頭資訊告訴伺服器處理表單資料所需要使用的字符集。
我們知道,在中有乙個屬性叫做
accept-charset
,就是用來設定請求頭中accept-charset
屬性的值的。
常用的值有iso-8859-1
、utf-8
。
connection
我們知道http協議採用「請求-應答」
模式,當使用普通模式,即非keep-alive
模式時,每個請求/應答客戶和伺服器都要新建乙個連線,完成 之後立即斷開連線(http協議為無連線的協議)
當使用keep-alive
模式(又稱持久連線、連線重用)時,keep-alive
功能使客戶端到服 務器端的連線持續有效,當出現對伺服器的後繼請求時,keep-alive
功能避免了建立或者重新建立連線。
cookie
對cookie
大家應該都非常熟悉了,這個資訊就是用來存放cookie
,並傳給伺服器的。
if-modified-since&if-unmodified-since
這兩個頭資訊的值都是date
格式,用來告訴伺服器所需要的檔案的日期範圍。
如果伺服器上沒有更新或者更舊的檔案,就會返回乙個304
的狀態碼,表示檔案並沒有改動,可以直接從快取中載入。
user-agent
這個資訊記錄了發出請求的客戶端的資訊,包含了瀏覽器型別、版本等資訊。通過這個資訊可以做瀏覽器型別判斷。
servlet伺服器http響應
當客戶端傳送了乙個請求給伺服器,伺服器也會返回乙個響應給客戶端,同樣的,這個響應中也包含了除資料之外的很多資訊。
如圖
control-allow-origin
access-control-allow-origin
是html5中定義的一種解決資源跨域的策略。
如果設定為我們自己當前頁面的網域名稱時,瀏覽器才會允許我們拿到這個響應的資料,並進行下一步的處理。當設定為*
的時候,表示該資源誰都可以用。
content-type
這個頭資訊告訴瀏覽器這個響應的資料格式及編碼型別。
server
通過伺服器的響應頭,我們還能知道伺服器的型別。
set-cookie
web伺服器通過傳送http 包頭中的set-cookie 訊息把乙個cookie 傳送到使用者的瀏覽器中。
完整的set-cookie
格式如下
set-cookie:customer=huangxp; path=/foo; domain=.ibm.com;
expires= wednesday, 19-oct-05 23:12:40 gmt; [secure]
path=/foo
控制哪些訪問能夠觸發cookie 的傳送。如果沒有指定path,cookie會在所有對此站點的http傳送時傳送。
如果path=/directory,只有訪問/directory 下面的網頁時,cookie才被傳送。
domain=.ibm.com
指定cookie被傳送到哪台計算機上。
正常情況下,cookie只被送回最初向使用者傳送cookie的計算機。如果domain 被設為空,domain就被設定為和提供cookie 的web 伺服器相同。如果domain不為空,並且它的值又和提供cookie的web伺服器網域名稱不符,這個cookie將被忽略。
expires= wednesday, 19-oct-05 23:12:40 gmt
指定cookie 失效的時間。如果沒有指定失效時間,這個cookie 就不會被寫入計算機的硬碟上,並且只持續到這次會話結束。
secure
如果secure 這個詞被作為set-cookie 頭的一部分,那麼cookie 只能通過安全通道傳輸(目前即ssl通道)。否則,瀏覽器將忽略此cookie。
最後這麼多的屬性留給我們去使用,去互動資料,它們就像乙個個的座位,servlet的http請求就像一輛在客戶端和伺服器之間往返的大巴。
乙個複雜的web應用正是因為這些大巴組成的交通網才能暢通無阻。
下一章——大巴司機httpservletresponse
和httpservletrequest
。
Linq to excel 你聽說過嗎?
今天在網上偶爾發現乙個開源專案,linq to excel,感覺挺有意思的,不過這個可能要.net 3.0以上才可以用吧 類似以下的 var excel new excelqueryfactory excelfilename var indianacompanies from c in excel ...
聽說你不會玩直播技術?
直播是今年來最火的乙個話題,也成為2016年的流行吸金方式之一 遊戲直播 鬥魚 熊貓tv 虎牙直播 龍珠直播 戰旗tv 直播技術分析 ios客戶端需要掌握哪些技術?即時通訊 1 觀眾和主播互動的禮物 聊天及時呈現 2 彈幕 體介面的搭建和展示 解協議 遠端伺服器通過某種協議將資料傳遞給我們客戶端,客...
聽說你的需求做不完
需求太多,是程式設計師們共同面對的困局。從前端到後端 從資料到分析 從互動到測試,幾乎每個人都很忙。大公司的用人標準,早期有乙個很常見的說法,叫作 三個程式設計師,拿四個人的工資,做五個人的事情 在行業高速發展期,給更多的錢,確實非常吸引人。但後來,行業發展不像早期那麼快速,內捲的趨勢隱隱然在加劇,...