點擊右邊

HTTP中GET與POST的區分,9拉斯維加斯娛樂 9 %的人都懂得錯了

今彩539包牌6碼中獎金額

 1.GET與POST
GET以及POST是HTTP哀求的兩種根本要領,要說它們的區分,打仗過WEB開發的人都能說出一二。
最直觀的區分便是GET把參數包括在URL中,POST經由過程request body傳遞參數。
你可能本人寫過無數個GET以及POST哀求,或者者已經經望過許多權勢巨子網站總結六合彩版路出的他們的區分,你特別很是清晰曉得甚么時辰該用甚么。
當你在口試中被問到這個成績,你的心田充斥了自傲以及高興。

你微微松松的給出了一個“規范謎底”:

  • GET在涉獵器歸退時是有害的,而POST會再次提交哀求。
  • GET發生的URL地址可以被Bookmark,而POST弗成以。
  • GET哀求會被涉獵器自動cache,而POST不會,除非手動配置。
  • GET哀求只能進行url編碼,而POST支撐多種編碼方式。
  • GET哀求參數會被完備保留在涉獵器汗青記載里,而POST中的參數不會被保留。
  • GET哀求在URL中傳送的參數是有長度限定的,而POST么有。
  • 對參數的數據類型,GET只接收ASCII字符,而POST沒有限定。
  • GET比POST更不寧靜,由于參數間接裸露在URL上,以是不克不及用來傳遞敏感信息。
  • GET參數經由過程URL傳遞,POST放在Request body中。

(本規范謎底參考自w3schools)
“很遺憾,這不是咱們要的歸答!”

請奉告我實情。。。
2.這是實情…
若是我奉告你GET以及POST實質上沒有區分你信嗎?
讓咱們扒下GET以及POST的外套,坦誠相見吧!

GET以及POST是甚么?HTTP協定中的兩種發送哀求的要領。
HTTP是甚么?HTTP是基于TCP/IP的對于數據若何在萬維網中若何通訊的協定。
HTTP的底層是TCP/IP。以是GET以及POST的底層也是TCP/IP,也便是說,GET/POST都是TCP鏈接。GET以及POST能做的工作是同樣同樣的。你要給GET加上request body,給POST帶上url參數,手藝上是齊全行的通的。
那末,“規范謎底”里的那些區分是怎么歸事?

3.故事得從200年前提及
在我大萬維網世界中,TCP就像汽車,咱們用TCP來運輸數據,它很靠得住,歷來不會產生丟件少件的征象。
然則若是路上跑的滿是望起來截然不同的汽車,那這個世界望起來是一團凌亂,送急件的汽車可能被后面滿載貨品的汽車攔堵在路上,整個交電競運彩分析通體系肯定會癱瘓。為了不這類環境產生,交通規定HTTP降生了。
HTTP給汽車運輸設定了好幾個服務種別,有GET, POST, PUT, DELETE等等,HTTP規則,當履行GET哀求的時辰,要給汽車貼上GET的標簽(配置method為GET),并且要求把傳送的數據放在車頂上(url中)以便利記載。
若是是POST哀求,就要在車上貼上POST的標簽,并把貨品放在車廂里。當然,你也能夠在GET的時辰去車廂內偷偷躲點貨品,然則這是很不色澤;也能夠在POST的時辰在車頂上也放一些數據,讓人以為傻乎乎的。HTTP只是個舉動原則,而TCP才是GET以及POST怎么完成的根偏財運占卜本。
然則,咱們只望到HTTP對GET以及POST參數的傳送渠道(url仍是requrest body)提出了要求。“規范謎底”里對于參數巨細的限定又是從哪來的呢?

4.一家運輸公司
在我大萬維網世界中,還有另一個緊張的腳色:運輸公司。
不同的涉獵器(提倡http哀求)以及服務器(接收http哀求)便是不同的運輸公司。 固然實踐上,你可以在車頂上無窮的堆貨品(url中無窮加參數)。然則運輸公司可不傻,裝貨以及卸貨也是有很大本錢的,他們會限定單次運輸量來節制危害,數據量太大對涉獵器以及服務器都是很大負擔。
業界不成文的規則是,(大多半)涉獵器平日都邑限定url長度在2K個字節,而(大多半)服務器至多處置64K巨細的url。跨越的部門,恕不處置。若是你用GET服務,在request body偷偷躲了數據,不同服務器的處置方式也是不同的,有些服務器會幫你卸貨,讀出數據,有些服務器間接忽略,以是,固然GET可以帶request body,也不克不捕魚達人-遊戲及保障肯定能被接受到哦。
好了,目前你曉得,GET以及POST實質上便是TCP鏈接,并無差別。然則因為HTTP的規則以及涉獵器/服務器的限定,致使他們在運用進程中體現出一些不同。
你覺得本文就這么收場了撲克牌妞妞作弊?

5.故事還在持續
咱們的大BOSS還等著進場呢。。。
這位BOSS有多秘密?當你試圖在網上找“GET以及POST的區分”的時辰,那些你會望到的搜刮效果里,從沒有提到他。他事實是甚么呢。。。
GET以及POST還有一個嚴重區分,簡略的說:
GET發生一個TCP數據包;POST發生兩個TCP數據包。
長的說:
關于GET方式的哀求,涉獵器會把http header以及data一并發送進來,服務器相應200(返歸數據);
而關于POST,涉獵器先發送header,服務器相應100 continue,涉獵器再發送data,服務器相應200 ok(返歸數據)。
也便是說,GET只要要汽車跑一趟就把貨送到了,而POST得跑兩趟,第一趟,先往以及服務器打個召喚“嗨,我等下要送一批貨來,你們關上門歡迎我”,然后再歸頭把貨送已往。

【免責聲明】本站內容轉載自互聯網,其相關談吐僅代表作者小我私家概念盡非權勢巨子,不代表本站態度。如您發明內容存在版權成績,請提交相關鏈接至郵箱:,咱們將實時予以處置。