來(lái)源:青燈夜游 發(fā)布時(shí)間:2018-12-08 15:23:47 閱讀量:1177
GET和POST方法的區(qū)別是什么?本篇文章就給大家具體介紹GET和POST方法,讓大家了解GET和POST方法的區(qū)別,希望對(duì)你們有所幫助。
Web瀏覽器通常會(huì)使用HTTP(超文本傳輸協(xié)議)的兩種方法(GET方法和POST方法)其中之一來(lái)與服務(wù)器通信。這兩種方法會(huì)以不同方式傳遞信息,將數(shù)據(jù)發(fā)送到服務(wù)器。下面我們就來(lái)具體看看GET方法和POST方法。
GET方法
在GET方法中,數(shù)據(jù)將作為URL的參數(shù)發(fā)送,這些參數(shù)通常是由&符號(hào)分隔的名稱和值對(duì)的字符串。通常,具有GET數(shù)據(jù)的URL將如下所示:
1 |
|
在URL中name和age都是GET參數(shù),john和24是這些參數(shù)的值;多個(gè)“參數(shù)=值”可通過與&符號(hào)級(jí)聯(lián)被嵌入U(xiǎn)RL里。人們只能通過GET方法發(fā)送簡(jiǎn)單的文本數(shù)據(jù)。
使用GET方法的優(yōu)點(diǎn)和缺點(diǎn)
1、由于GET方法發(fā)送的數(shù)據(jù)顯示在URL中,因此可以使用特定查詢字符串值為頁(yè)面添加書簽。
2、GET方法不適合傳遞用戶名和密碼等敏感信息,因?yàn)檫@些信息在URL查詢字符串中完全可見,并且可能作為訪問頁(yè)存儲(chǔ)在客戶端瀏覽器的內(nèi)存中。
3、由于GET方法將數(shù)據(jù)分配給服務(wù)器環(huán)境變量,因此URL的長(zhǎng)度是有限的。因此,要發(fā)送的總數(shù)據(jù)存在限制。
PHP提供了超全局變量$_GET來(lái)訪問通過URL發(fā)送的所有信息;或使用HTML,通過HTML表單提交的信息method="get"來(lái)發(fā)送信息。
POST方法
在POST方法中,數(shù)據(jù)作為包在與處理腳本的單獨(dú)通信中發(fā)送到服務(wù)器;通過POST方法發(fā)送的數(shù)據(jù)在URL中不可見。
POST方法適用于可以傳遞大量信息的情況。當(dāng)服務(wù)器通過采用POST的表單接收請(qǐng)求時(shí),它在對(duì)URL進(jìn)行請(qǐng)求之后立即傳輸表單輸入的所有相關(guān)信息。
使用POST方法的優(yōu)點(diǎn)和缺點(diǎn)
1、它比GET更安全,因?yàn)橛脩糨斎氲男畔⒃赨RL查詢字符串或服務(wù)器日志中永遠(yuǎn)不可見。
2、可以傳遞的數(shù)據(jù)量有一個(gè)更大的限制,一個(gè)人可以使用POST發(fā)送文本數(shù)據(jù)和二進(jìn)制數(shù)據(jù)(上傳文件)。
3、由于POST方法發(fā)送的數(shù)據(jù)在URL中不可見,因此無(wú)法使用特定查詢?yōu)轫?yè)面添加書簽。
PHP會(huì)提供另一個(gè)超全局變量$_POST來(lái)訪問通過post方法發(fā)送的所有信息;或通過HTML表單使用method="post"來(lái)發(fā)送信息。
GET和POST方法的區(qū)別
雖然,GET和POST方法都是將數(shù)據(jù)發(fā)送到服務(wù)器,與服務(wù)器進(jìn)行通信;但這兩種方法是不同的,下面我們就來(lái)看看GET和POST方法的區(qū)別。
1、發(fā)送的數(shù)據(jù)數(shù)量
在Get中,只能發(fā)送有限數(shù)量的數(shù)據(jù),因?yàn)閿?shù)據(jù)是在URL中發(fā)送的;
在POST中,可以發(fā)送大量的數(shù)據(jù),因?yàn)閿?shù)據(jù)是在正文主體中發(fā)送的。
2、安全性
GET方法發(fā)送的數(shù)據(jù)不受保護(hù),因?yàn)閿?shù)據(jù)在URL欄中公開,這增加了漏洞和黑客攻擊的風(fēng)險(xiǎn)。
POST方法發(fā)送的數(shù)據(jù)是安全的,因?yàn)閿?shù)據(jù)未在URL欄中公開,還可以在其中使用多種編碼技術(shù),這使其具有彈性。
3、加入書簽中
GET查詢的結(jié)果可以加入書簽中,因?yàn)樗訳RL的形式存在;而POST查詢的結(jié)果無(wú)法加入書簽中。
4、編碼
在表單中使用GET方法時(shí),數(shù)據(jù)類型中只接受ASCII字符。
在表單提交時(shí),POST方法不綁定表單數(shù)據(jù)類型,并允許二進(jìn)制和ASCII字符。
5、可變大小
GET方法中的可變大小約為2000個(gè)字符。而,POST方法最多允許8 Mb的可變大小。
6、緩存
GET方法的數(shù)據(jù)是可緩存的,而POST方法的數(shù)據(jù)是無(wú)法緩存的。
7、主要作用
GET方法主要用于獲取信息。而,POST方法主要用于更新數(shù)據(jù)。
總結(jié):以上就是本篇文章的全部?jī)?nèi)容,希望能對(duì)大家的學(xué)習(xí)有所幫助。
在線
客服
服務(wù)時(shí)間:周一至周日 08:30-18:00
選擇下列產(chǎn)品馬上在線溝通:
客服
熱線
7*24小時(shí)客服服務(wù)熱線
關(guān)注
微信
關(guān)注官方微信