“預(yù)請(qǐng)求”要求必須先發(fā)送一個(gè) OPTIONS 請(qǐng)求給目的站點(diǎn),來查明這個(gè)跨站請(qǐng)求對(duì)于目的站點(diǎn)是不是安全可接受的。這樣做,是因?yàn)榭缯菊?qǐng)求可能會(huì)對(duì)目的站點(diǎn)的數(shù)據(jù)造成破壞。 當(dāng)請(qǐng)求具備以下條件,就會(huì)被當(dāng)成預(yù)請(qǐng)求處理:
請(qǐng)求以 GET, HEAD 或者 POST 以外的方法發(fā)起請(qǐng)求?;蛘?,使用 POST,但請(qǐng)求數(shù)據(jù)為 application/x-www-form-urlencoded, multipart/form-data 或者 text/plain 以外的數(shù)據(jù)類型。比如說,用 POST 發(fā)送數(shù)據(jù)類型為 application/xml 或者 text/xml 的 XML 數(shù)據(jù)的請(qǐng)求。
使用自定義請(qǐng)求頭(比如添加諸如 X-PINGOTHER)
Note: 從Gecko 2.0開始,text/plain, application/x-www-form-urlencoded 和 multipart/form-data 類型的數(shù)據(jù)都可以直接用于跨站請(qǐng)求,而不需要先發(fā)起“預(yù)請(qǐng)求”了。之前,只有 text/plain 可以不用先發(fā)起“預(yù)請(qǐng)求”,進(jìn)行跨站請(qǐng)求。
HEAD請(qǐng)求常常被忽略,但是能提供很多有用的信息,特別是在有限的速度和帶寬下。主要有以下特點(diǎn):
1、只請(qǐng)求資源的首部;2、檢查超鏈接的有效性;3、檢查網(wǎng)頁是否被修改;4、多用于自動(dòng)搜索機(jī)器人獲取網(wǎng)頁的標(biāo)志信息,獲取rss種子信息,或者傳遞安全認(rèn)證信息等
HEAD方法:它與GET方法幾乎是一樣的,對(duì)于HEAD請(qǐng)求的回應(yīng)部分來說,它的HTTP頭部中包含的信息與通過GET請(qǐng)求所得到的信息是相同的。利用這個(gè)方法,不必傳輸整個(gè)資源內(nèi)容,就可以得到Request-URI所標(biāo)識(shí)的資源的信息。該方法常用于測(cè)試超鏈接的有效性,是否可以訪問,以及最近是否更新。
聯(lián)系客服