<font id="zqva1"></font>
<rt id="zqva1"></rt>
  • <tt id="zqva1"></tt>
    <cite id="zqva1"></cite>

    <cite id="zqva1"><noscript id="zqva1"></noscript></cite>
      <rp id="zqva1"><meter id="zqva1"></meter></rp>

        <cite id="zqva1"></cite>
          <b id="zqva1"></b>
          <rp id="zqva1"></rp>
          <cite id="zqva1"></cite>

          <rt id="zqva1"></rt>

        1. <rp id="zqva1"></rp>

          Web開發HTTP協議知識_常用http方法、http狀態碼等(前端開發和面試必備))

          時間:?2017-11-08閱讀:?1539標簽:?協議

          http請求由三部分組成,分別是:請求行、消息報頭、請求正文。

          HTTP(超文本傳輸協議)是一個基于請求與響應模式的、無狀態的、應用層的協議,常基于TCP的連接方式,HTTP1.1版本中給出一種持續連接的機制,絕大多數的Web開發,都是構建在HTTP協議之上的Web應用。HTTP就是一個用文本格式描述報文頭并用雙換行分隔報文頭和內容,在TCP基礎上實現的請求-響應模式的雙向通信協議。


          1、常用的HTTP方法有哪些?

          GET: 用于請求訪問已經被URI(統一資源標識符)識別的資源,可以通過URL傳參給服務器。
          POST:用于傳輸信息給服務器,主要功能與GET方法類似,但一般推薦使用POST方式。
          PUT: 傳輸文件,報文主體中包含文件內容,保存到對應URI位置。
          HEAD: 獲得報文首部,與GET方法類似,只是不返回報文主體,一般用于驗證URI是否有效。
          DELETE:刪除文件,與PUT方法相反,刪除對應URI位置的文件。
          OPTIONS:查詢相應URI支持的HTTP方法。


          2、GET方法與POST方法的區別

          區別一:
          get重點在從服務器上獲取資源,post重點在向服務器發送數據;
          區別二:
          get傳輸數據是通過URL請求,以field(字段)= value的形式,置于URL后,并用"?"連接,多個請求數據間用"&"連接,如http://127.0.0.1/Test/login.action?name=admin&password=admin,這個過程用戶是可見的;
          post傳輸數據通過Http的post機制,將字段與對應值封存在請求實體中發送給服務器,這個過程對用戶是不可見的;
          區別三:
          Get傳輸的數據量小,因為受URL長度限制,但效率較高;
          Post可以傳輸大量數據,所以上傳文件時只能用Post方式;
          區別四:
          get是不安全的,因為URL是可見的,可能會泄露私密信息,如密碼等;
          post較get安全性較高;
          區別五:
          get方式只能支持ASCII字符,向服務器傳的中文字符可能會亂碼。
          post支持標準字符集,可以正確傳遞中文字符。


          3、HTTP請求報文與響應報文格式

          請求報文包含三部分:
          a、請求行:包含請求方法、URI、HTTP版本信息
          b、請求首部字段
          c、請求內容實體
          響應報文包含三部分:
          a、狀態行:包含HTTP版本、狀態碼、狀態碼的原因短語
          b、響應首部字段
          c、響應內容實體

          4、URI和URL的區別

          URI:統一資源標識符,用來唯一的標識一個資源。Web上可用的每種資源如HTML文檔、圖像、視頻片段、程序等都是一個來URI來定位的。 

          URI組成:①訪問資源的命名機制②存放資源的主機名③資源自身的名稱,由路徑表示,著重強調于資源。 

          URL:Internet上用來描述信息資源的字符串,主要用在各種WWW客戶程序和服務器程序上,特別是著名的Mosaic。采用URL可以用一種統一的格式來描述各種信息資源,包括文件、服務器的地址和目錄等。 

          URL組成:①協議(或稱為服務方式)②存有該資源的主機IP地址(有時也包括端口號)③主機資源的具體地址。如目錄和文件名等 每個URL都是 URI,但不一定每個URI都是URL。這是因為URI還包括一個子類,即統一資源名稱 (URN),它命名資源但不指定如何定位資源。 

          在Java的URI中,一個URI實例可以代表絕對的,也可以是相對的,只要它符合URI的語法規則。而URL類則不僅符合語義,還包含了定位該資源的信息,因此它不能是相對的。 在Java類庫中,URI類不包含任何訪問資源的方法,它唯一的作用就是解析。相反的是,URL類可以打開一個到達資源的流。


          5、常見的HTTP相應狀態碼

          返回的狀態
          1xx:指示信息--表示請求已接收,繼續處理
          2xx:成功--表示請求已被成功接收、理解、接受
          3xx:重定向--要完成請求必須進行更進一步的操作
          4xx:客戶端錯誤--請求有語法錯誤或請求無法實現
          5xx:服務器端錯誤--服務器未能實現合法的請求


          200:請求被正常處理
          204:請求被受理但沒有資源可以返回
          206:客戶端只是請求資源的一部分,服務器只對請求的部分資源執行GET方法,相應報文中通過Content-Range指定范圍的資源。
          301:永久性重定向
          302:臨時重定向
          303:與302狀態碼有相似功能,只是它希望客戶端在請求一個URI的時候,能通過GET方法重定向到另一個URI上
          304:發送附帶條件的請求時,條件不滿足時返回,與重定向無關
          307:臨時重定向,與302類似,只是強制要求使用POST方法
          400:請求報文語法有誤,服務器無法識別
          401:請求需要認證
          403:請求的對應資源禁止被訪問
          404:服務器無法找到對應資源
          500:服務器內部錯誤
          503:服務器正忙


          6、HTTP特點

          1、簡單快速:客戶向服務器請求服務時,只需傳送請求方法和路徑。

          2、靈活:HTTP允許傳輸任意類型的數據對象。正在傳輸的類型由Content-Type加以標記。

          3.無連接:無連接的含義是限制每次連接只處理一個請求。服務器處理完客戶的請求,并收到客戶的應答后,即斷開連接。采用這種方式可以節省傳輸時間。

          4.無狀態:HTTP協議是無狀態協議。無狀態是指協議對于事務處理沒有記憶能力。缺少狀態意味著如果后續處理需要前面的信息,則它必須重傳,這樣可能導致每次連接傳送的數據量增大。另一方面,在服務器不需要先前信息時它的應答就較快。

          5、支持B/S及C/S模式。


          7、HTTP1.1版本新特性

          a、默認持久連接節省通信量,只要客戶端服務端任意一端沒有明確提出斷開TCP連接,就一直保持連接,可以發送多次HTTP請求

          b、管線化,客戶端可以同時發出多個HTTP請求,而不用一個個等待響應

          c、斷點續傳原理



          8、常見HTTP首部字段

          a、通用首部字段(請求報文與響應報文都會使用的首部字段)
          Date:創建報文時間
          Connection:連接的管理
          Cache-Control:緩存的控制
          Transfer-Encoding:報文主體的傳輸編碼方式
          b、請求首部字段(請求報文會使用的首部字段)
          Host:請求資源所在服務器
          Accept:可處理的媒體類型
          Accept-Charset:可接收的字符集
          Accept-Encoding:可接受的內容編碼
          Accept-Language:可接受的自然語言
          c、響應首部字段(響應報文會使用的首部字段)
          Accept-Ranges:可接受的字節范圍
          Location:令客戶端重新定向到的URI
          Server:HTTP服務器的安裝信息
          d、實體首部字段(請求報文與響應報文的的實體部分使用的首部字段)
          Allow:資源可支持的HTTP方法
          Content-Type:實體主類的類型
          Content-Encoding:實體主體適用的編碼方式
          Content-Language:實體主體的自然語言
          Content-Length:實體主體的的字節數
          Content-Range:實體主體的位置范圍,一般用于發出部分請求時使用


          9、HTTP的缺點與HTTPS

          a、通信使用明文不加密,內容可能被竊聽
          b、不驗證通信方身份,可能遭到偽裝
          c、無法驗證報文完整性,可能被篡改

          HTTPS就是HTTP加上加密處理(一般是SSL安全通信線路)+認證+完整性保護

           

          10、HTTP優化

          利用負載均衡優化和加速HTTP應用

          利用HTTP Cache來優化網站


          站長推薦

          1.阿里云: 本站目前使用的是阿里云主機,安全/可靠/穩定。點擊領取2000元代金券、了解最新阿里云產品的各種優惠活動點擊進入

          2.騰訊云: 提供云服務器、云數據庫、云存儲、視頻與CDN、域名等服務。騰訊云各類產品的最新活動,優惠券領取點擊進入

          3.廣告聯盟: 整理了目前主流的廣告聯盟平臺,如果你有流量,可以作為參考選擇適合你的平臺點擊進入

          鏈接: http://www.modern-decoration.com.cn/article/detial/65

          HTTP 協議的 8 種請求類型介紹

          HTTP 協議中共定義了八種方法或者叫“動作”來表明對 Request-URI 指定的資源的不同操作方式,具體介紹如下:雖然 HTTP 的請求方式有 8 種,但是我們在實際應用中常用的也就是 get 和 post

          實現memcached客戶端:TCP、連接池、一致性哈希、自定義協議

          memcached 本身并不支持集群,為了使用集群,我們可以自己在客戶端實現路由分發,將相同的 key 路由到同一臺 memcached 上去即可。路由算法有很多,這里我們使用一致性哈希算法。

          javascript偽協議是什么?

          偽協議是為關聯應用程序而使用的,JavaScript偽協議實際上是把javascript:后面的代碼當JavaScript來執行,并將結果值返回給當前頁面。

          HTTP無狀態協議理解

          HTTP協議是無狀態協議。無狀態是指協議對于事務處理沒有記憶能力。缺少狀態意味著如果后續處理需要前面的信息,則它必須重傳,這樣可能導致每次連接傳送的數據量增大。另一方面,在服務器不需要先前信息時它的應答就較快

          HTTP與TCP的區別和聯系

          手機能夠使用聯網功能是因為手機底層實現了TCP/IP協議,可以使手機終端通過無線網絡建立TCP連接。TCP協議可以對上層網絡提供接口,使上層網絡數據的傳輸建立在“無差別”的網絡之上。 建立起一個TCP連接需要經過“三次握手”

          HTTP協議無狀態,到底要怎么理解?

          一天,你有個需求,你要去超市買一瓶醬油。到了超市買了醬油,你告訴售貨員,下次給我準備下面粉,我下次來拿。第二次,你去超市拿面粉,售貨員說他不記得你什么時候說要準備面粉。

          IPv6特點;IPv6與IPv4共存技術

          實踐證明IPv4是一個非常成功的協議,它本身也經受住了Internet從數目很少的計算機發展到目前上億臺計算機互聯的考驗。但該協議是幾十年前基于當時的網絡規模而設計的。

          常見的網絡協議有哪些?幾種常用的網絡協議

          常用的網絡協議有TCP/IP協議、HTTP協議、FTP協議、Telnet協議、FTP協議、SMTP協議、NFS協議、UDP協議等。網絡協議為計算機網絡中進行數據交換而建立的規則、標準或約定的集合。

          //缺省協議的講解,用 //代替 http:// 有什么好處?

          //缺省協議的使用,代表資源訪問的協議和當前頁面保持一致,如果當前頁面是http ,采用http協議訪問,如果是https,則使用 https 協議訪問。這樣用就不管是http還是升級到https都不用改動代碼,現在很多CDN資源都是這樣引用。一般使用在內鏈中,外鏈的協議頭具有不確定性的原因。

          fly63.com版權所有,內容以共享、參考、研究為目的,不存在任何商業目的。其版權屬原作者所有,如有侵權,請與小編聯系!情況屬實本人將予以刪除!

          文章投稿關于web前端網站點搜索站長推薦網站地圖站長QQ:522607023

          小程序專欄: 土味情話心理測試腦筋急轉彎幽默笑話段子句子語錄成語大全運營推廣

          国产精品高清视频免费 - 视频 - 在线观看 - 影视资讯 - 唯爱网