教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

Java培訓(xùn)之防盜鏈及Content-Type解讀

更新時(shí)間:2016年06月24日15時(shí)59分 來(lái)源:傳智播客Java培訓(xùn)學(xué)院 瀏覽次數(shù):

1.請(qǐng)求頭Referer

Referer請(qǐng)求頭的值是發(fā)送請(qǐng)求的超鏈接所屬頁(yè)面的URL。下面通過(guò)一個(gè)案例來(lái)詳細(xì)了解Referer請(qǐng)求頭,代碼詳情請(qǐng)參考防盜鏈之代碼詳解。
  1. 創(chuàng)建一個(gè)web應(yīng)用Example06,在該應(yīng)用的index.jsp頁(yè)面中,添加一個(gè)超鏈接,主要代碼如例1-1所示:
例1-1 index.jsp
  由例1-1可知,index.jsp頁(yè)面中的超鏈接所連接的地址是Example04,也就是說(shuō)當(dāng)點(diǎn)擊該超鏈接訪問(wèn)的是Example04的index.jsp頁(yè)面。
(2)將Example06以及Example04發(fā)布到Tomcat服務(wù)器中,然后啟動(dòng)Tocmat服務(wù)器,最后在瀏覽器端地址欄上輸入http://localhost:8080/Example06,瀏覽器顯示結(jié)果如圖1-1所示:
圖1-1 運(yùn)行結(jié)果
(3)點(diǎn)擊圖1-1所示中的【點(diǎn)擊去Example04】超鏈接,并使用HttpWatch工具進(jìn)行抓包,如圖1-2所示:
圖1-2 運(yùn)行結(jié)果
通過(guò)HttpWatch抓包后,得到請(qǐng)求信息,具體內(nèi)容如例1-2所下:
例1-1 請(qǐng)求信息
我們可以發(fā)現(xiàn)Referer請(qǐng)求頭的值為:http://localhost:8080/Example06/,我們是從Exmple06項(xiàng)目的index.jsp頁(yè)面跳轉(zhuǎn)到Example04的index.jsp頁(yè)面,而Example06的index.jsp頁(yè)面的URL也確實(shí)是http://localhost:8080/Example06。

2.什么是盜鏈

假設(shè)一個(gè)網(wǎng)站的首頁(yè)中想顯示一些圖片信息,而該網(wǎng)站的服務(wù)器中并沒有這些圖片資源,它就通過(guò)在Html文件或jsp文件中使用img標(biāo)簽鏈接到其他網(wǎng)站的圖片資源,將其展示給瀏覽者,這就是盜鏈。
  • 如何防盜鏈
在本網(wǎng)站中,對(duì)所有請(qǐng)求都進(jìn)行判斷請(qǐng)求信息中Referer請(qǐng)求頭的值是否是本站的url,如果不是可以阻止其訪問(wèn)或跳轉(zhuǎn)到指定的頁(yè)面。
使用Referer請(qǐng)求頭要注意以下兩點(diǎn):
  • 如果是在瀏覽器地址欄上直接訪問(wèn),那么請(qǐng)求信息中就沒有Referer請(qǐng)求頭。
  • 如果在頁(yè)面中點(diǎn)擊超鏈接或者提交表單,請(qǐng)求信息中存在Referer請(qǐng)求頭。
Referer請(qǐng)求頭有以下兩個(gè)用途:
  • 統(tǒng)計(jì)工作
  • 防盜鏈

3.Content-Type請(qǐng)求頭

HTTP響應(yīng)協(xié)議中,我們講解的響應(yīng)頭中提到過(guò)Content-Type。請(qǐng)求頭中也有一個(gè)請(qǐng)求頭名字為Content-Type,但是它們是不一樣的。
Content-Type請(qǐng)求頭是瀏覽器告訴服務(wù)器,請(qǐng)求體的類型。對(duì)于Get請(qǐng)求來(lái)說(shuō),它是沒有請(qǐng)求體的,所以Gontent-Type請(qǐng)求頭在GET方式的請(qǐng)求信息中是不存在的。它的默認(rèn)值是application/x-www-form/urlencoded,表示請(qǐng)求體內(nèi)容會(huì)經(jīng)過(guò)URL編碼。

4.Content-Length請(qǐng)求頭

Content-Length請(qǐng)求頭的值是請(qǐng)求體的字節(jié)數(shù)。對(duì)于請(qǐng)求方式是GET請(qǐng)求的請(qǐng)求信息中是不存在這個(gè)請(qǐng)求頭的。

本文版權(quán)歸傳智播客Java培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)注明作者出處。謝謝!
作者:傳智播客Java培訓(xùn)學(xué)院
首發(fā):http://oisangadgets.com/javaee
0 分享到:
和我們?cè)诰€交談!