<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          【每日一題】get和post的區(qū)別

          共 1266字,需瀏覽 3分鐘

           ·

          2021-09-06 18:34

          人生苦短,總需要一點儀式感。比如學(xué)前端~

          get 和 post

          • get參數(shù)通過URL傳遞方式,post放在Request body中。
          • get請求會被瀏覽器主動緩存(cache,而post不會,除非手動設(shè)置。(緩存一般只適用于那些不會更新服務(wù)端數(shù)據(jù)的冪等請求。
          • get請求參數(shù)會被完整保留在瀏覽器歷史記錄里,而post中的參數(shù)不會被保留。
          • get請求中有非ASCII字符,會在請求之前進行轉(zhuǎn)碼,POST不用,因為post在Request body中,通過MIME,也就可以傳輸非ASCII字符。
          • 一般我們在瀏覽器輸入一個網(wǎng)址訪問網(wǎng)站都是get請求
          • HTTP的底層是TCP/IP。HTTP只是個行為準(zhǔn)則,而TCP才是get和post怎么實現(xiàn)的基本。get/post都是TCP鏈接。get和post能做的事情是一樣一樣的。但是請求的數(shù)據(jù)量太大對瀏覽器和服務(wù)器都是很大負(fù)擔(dān)。所以業(yè)界有了不成文規(guī)定,(大多數(shù)) 瀏覽器通常都會限制url長度在2K個字節(jié),而(大多數(shù))服務(wù)器最多處理64K大小的url。
          • get產(chǎn)生一個TCP數(shù)據(jù)包; post產(chǎn)生兩個TCP數(shù)據(jù)包。對于get方式的請求,瀏覽器會把http header和data一并發(fā)送出去,服務(wù)器響應(yīng)200 (返回數(shù)據(jù)) ;而對于post,瀏覽器先發(fā)送header,服務(wù)器響應(yīng)100 continue,瀏覽器再發(fā)送data,服務(wù)器響應(yīng)200 ok (返回數(shù)據(jù))
          • 在網(wǎng)絡(luò)環(huán)境好的情況下,發(fā)一次包的時間和發(fā)兩次包的時間差別基本可以無視。而在網(wǎng)絡(luò)環(huán)境差的情況下,兩次包的TCP在驗證數(shù)據(jù)包完整性上,有非常大的優(yōu)點。但并不是所有瀏覽器都會在post中發(fā)送兩次包,Firefox就只發(fā)送一次。

          冪等(idempotent)

          如果一個方法重復(fù)執(zhí)行多次,產(chǎn)生的效果是一樣的。我們就將其定義為冪等的。

          比如:

          • get請求: 通常用于獲取數(shù)據(jù),執(zhí)行多次和執(zhí)行一次得到的結(jié)果一樣(不考慮數(shù)據(jù)被其他入口改動)。
          • put請求:如果兩個請求相同,后一個請求會把第一個請求覆蓋掉。(所以PUT用來改資源)
          • post請求:后一個請求不會把第一個請求覆蓋掉。(所以post用來增加資源)

          END
          愿你歷盡千帆,歸來仍是少年。


          讓我們一起攜手同走前端路!

          關(guān)注公眾號回復(fù)【加群】即可

          ● 工作中常見頁面布局的n種實現(xiàn)方法

          ● 三欄響應(yīng)式布局(左右固寬中間自適應(yīng))的5種方法

          ● 兩欄自適應(yīng)布局的n種實現(xiàn)方法匯總

          ● 工作中常見的兩欄布局案例及分析

          ● 垂直居中布局的一百種實現(xiàn)方式

          ● 常用九宮格布局的幾大方法匯總

          ● 為什么操作DOM會影響WEB應(yīng)用的性能?

          ● 移動端滾動穿透的6種解決方案

          ● Vue + TypeScript 踩坑總結(jié)

          瀏覽 43
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  啪啪啪啪网址 | 天天好逼成人网 | 国产强伦轩免费视频在线 | 豆花网站高清无码18 | 国产多毛视频 |