国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

GET,POST — 簡(jiǎn)述

mudiyouyou / 1179人閱讀

摘要:通常情況下,由瀏覽器向服務(wù)器發(fā)起請(qǐng)求,服務(wù)器向?yàn)g覽器返回響應(yīng)。響應(yīng)包含了請(qǐng)求的狀態(tài)信息以及可能被請(qǐng)求的內(nèi)容。但是這個(gè)限制是針對(duì)所有請(qǐng)求的,與沒(méi)有關(guān)系。根據(jù)規(guī)范,表示可能修改變服務(wù)器上的資源的請(qǐng)求。

本文主要對(duì)GET與POST基本區(qū)別進(jìn)行匯總并掌握,如有錯(cuò)誤與遺漏之處,請(qǐng)指出。

1. HTTP

HTTP(即超文本傳輸協(xié)議)是現(xiàn)代網(wǎng)絡(luò)中最常見(jiàn)和常用的協(xié)議之一,
設(shè)計(jì)它的目的是保證客戶機(jī)和服務(wù)器之間的通信。
HTTP 的工作方式是客戶端與服務(wù)器之間的 “請(qǐng)求-響應(yīng)” 協(xié)議。
客戶端可以是 Web 瀏覽器,服務(wù)器端可以是計(jì)算機(jī)上的某些網(wǎng)絡(luò)應(yīng)用程序。
通常情況下,由瀏覽器向服務(wù)器發(fā)起 HTTP 請(qǐng)求,服務(wù)器向?yàn)g覽器返回響應(yīng)。
響應(yīng)包含了請(qǐng)求的狀態(tài)信息以及可能被請(qǐng)求的內(nèi)容。

2.請(qǐng)求方式

HTTP方法有OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE、CONNECT

其中兩種常見(jiàn)的 HTTP 請(qǐng)求就是:GET 和 POST。
區(qū)別: _GET_是從服務(wù)器上獲取數(shù)據(jù),_POST_則是向指定的資源提交要被處理的數(shù)據(jù)

3.格式

請(qǐng)求報(bào)文的格式:
  < request line >
  < headers >
  < blank line >
  < request-body >

GET請(qǐng)求數(shù)據(jù)按照查詢(xún)字符串(名稱(chēng)/值對(duì))方式,放置在HTTP請(qǐng)求協(xié)議頭(headers)中,也就是URL之后;

而POST提交的數(shù)據(jù)則放在實(shí)體的主體(request-body)中。

4. 緩存,書(shū)簽,歷史記錄,默認(rèn)method

  _4.1 緩存:_ GET會(huì)被緩存,POST不能。

  _4.2 書(shū)簽:_ GET可收藏為書(shū)簽,POST不可收藏為書(shū)簽

  _4.3 歷史記錄:_ GET請(qǐng)求的URL,參數(shù)會(huì)被瀏覽器保留在歷史中,POST參數(shù)不會(huì)。

  _4.4 默認(rèn)請(qǐng)求:_ 在from提交的時(shí)候,如果不指定Method,則默認(rèn)為get請(qǐng)求。

5. 響應(yīng)速度

GET請(qǐng)求是可以被客戶端緩存的。會(huì)比POST高效。

AJAX環(huán)境中GET響應(yīng)快速,POST需要先發(fā)送HTTP頭部(headers) 再發(fā)送報(bào)文實(shí)體的主體(request-body)中的數(shù)據(jù)。

6. 類(lèi)型限制

6.1 GET限制數(shù)據(jù)集的值必須為ASCII字符;

GET提交的數(shù)據(jù)將會(huì)附加在url之后,以?分開(kāi)與url分開(kāi)。

1.以 ? 來(lái)分隔URL和數(shù)據(jù);
2.以& 來(lái)分隔參數(shù);
3.如果數(shù)據(jù)是英文或數(shù)字,原樣發(fā)送;
4.如果數(shù)據(jù)是中文或其它字符,則進(jìn)行BASE64編碼
5.GET將數(shù)據(jù)的按照variable=value的形式,添加到URL后面;
如:http:// www.abc.com/?username=yt&id=123

6.2 POST沒(méi)有限制,允許二進(jìn)制數(shù)據(jù)。

POST是將數(shù)據(jù)放在請(qǐng)求的數(shù)據(jù)體(request-body)中,按照查詢(xún)字符串(名稱(chēng)/值對(duì))相對(duì)應(yīng)的方式,傳遞到所指向URL;

7. 大小限制

7.1.GET方式提交的數(shù)據(jù)最多只能是1024字節(jié),POST支持較大數(shù)據(jù)傳輸

7.2HTTP協(xié)議對(duì)GET和POST都沒(méi)有對(duì)長(zhǎng)度的限制

RFC 2616 中明確對(duì) uri 的長(zhǎng)度并沒(méi)有限制。
不過(guò)雖然在RFC中并沒(méi)有對(duì)uri的長(zhǎng)度進(jìn)行限制,但是各大瀏覽器廠家實(shí)現(xiàn)上限制了URL的長(zhǎng)度。

 IE對(duì)URL長(zhǎng)度的限制是2083字節(jié)(2K+35)
而對(duì)于URL長(zhǎng)度上的限制,有兩方面的原因造成 ( 安全考慮 ):
 瀏覽器:據(jù)說(shuō)早期的瀏覽器會(huì)對(duì)URL長(zhǎng)度做限制。IE對(duì)URL長(zhǎng)度會(huì)限制在2083個(gè)字符內(nèi),Chrome會(huì)崩潰。
 服務(wù)器:URL長(zhǎng)了,對(duì)服務(wù)器處理也是一種負(fù)擔(dān)。
 原本一個(gè)會(huì)話就沒(méi)有多少數(shù)據(jù),現(xiàn)在如果有人惡意地構(gòu)造幾個(gè)幾M大小的URL,
 并不停地訪問(wèn)你的服務(wù)器。服務(wù)器的最大并發(fā)數(shù)顯然會(huì)下降。
 另一種攻擊方式是:把告訴服務(wù)器Content-Length是一個(gè)很大的數(shù),
 然后只給服務(wù)器發(fā)一點(diǎn)兒數(shù)據(jù),嘿嘿,服務(wù)器你就傻等著去吧。
 哪怕你有超時(shí)設(shè)置,這種故意的次次訪問(wèn)超時(shí)也能讓服務(wù)器吃不了兜著走。
 有鑒于此,多數(shù)服務(wù)器出于安全啦、穩(wěn)定啦方面的考慮,會(huì)給URL長(zhǎng)度加限制。
 但是這個(gè)限制是針對(duì)所有HTTP請(qǐng)求的,與GET、POST沒(méi)有關(guān)系。
8. 實(shí)際中 — POST比GET「相對(duì)安全」

GET所發(fā)送的數(shù)據(jù)是 URL 的一部分,
有時(shí)候會(huì)直接反應(yīng)在瀏覽器的地址欄,
現(xiàn)在的瀏覽器大多會(huì)記住曾經(jīng)輸入過(guò)的URL(在發(fā)送密碼或敏感信息時(shí)絕不要使用 GET !)。
試想如果你曾經(jīng)在別人電腦上填過(guò)一個(gè)很私密的表單,那么你的這份記錄很可能被連沒(méi)什么電腦常識(shí)的人都一覽無(wú)遺。

但是被抓包之后的POST請(qǐng)求和GET請(qǐng)求是一樣裸露的,所以這里是相對(duì)的。

9. 語(yǔ)義上 — GET比POST「相對(duì)安全」

說(shuō) POST 比 GET 安全 也不完全對(duì)的。
根據(jù)HTTP規(guī)范,POST表示可能修改變服務(wù)器上的資源的請(qǐng)求。
在語(yǔ)義上(restful視角):
GET的是獲取指定URL上的資源,是讀操作。
重要的一點(diǎn)是不論對(duì)某個(gè)資源GET多少次,它的狀態(tài)是不會(huì)改變的,
在這個(gè)意義上,我們說(shuō)GET是安全的(不是被密碼學(xué)或者數(shù)據(jù)保護(hù)意義上的安全)。
因?yàn)镚ET是安全的,所以GET返回的內(nèi)容可以被瀏覽器,Cache服務(wù)器緩存起來(lái)。

POST的語(yǔ)義是修改變服務(wù)器上的資源的請(qǐng)求,所以是不安全的,
每次提交的POST,代碼都會(huì)認(rèn)為這個(gè)操作會(huì)修改資源的狀態(tài),
于是,瀏覽器在你按下F5的時(shí)候會(huì)跳出確認(rèn)框,緩存服務(wù)器不會(huì)緩存POST請(qǐng)求返回內(nèi)容。

參考:
GET請(qǐng)求和POST請(qǐng)求的區(qū)別
不再以訛傳訛,GET和POST的真正區(qū)別
淺談HTTP中Get與Post的區(qū)別
HTTP請(qǐng)求Get和Post的區(qū)別總結(jié)

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/79089.html

相關(guān)文章

  • 微服務(wù)指南走北(三):Restful API 設(shè)計(jì)簡(jiǎn)述

    摘要:為了避免的變動(dòng)導(dǎo)致用戶使用中產(chǎn)生意外結(jié)果或調(diào)用失敗,最好強(qiáng)制要求所有訪問(wèn)都需要指定版本號(hào)。請(qǐng)避免提供默認(rèn)版本號(hào),一旦提供,日后想要修改它會(huì)相當(dāng)困難。返回結(jié)果針對(duì)不同操作,服務(wù)器向用戶返回的結(jié)果應(yīng)該符合以下規(guī)范。 API的定義取決于選擇的IPC通信方式,如果是消息機(jī)制(如 AMQP 或者 STOMP),API則由消息頻道(channel)和消息類(lèi)型;如果是使用HTTP機(jī)制,則是基于請(qǐng)求/...

    TZLLOG 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<