国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

安卓網(wǎng)絡(luò)請求1————Http協(xié)議

這篇具有很好參考價值的文章主要介紹了安卓網(wǎng)絡(luò)請求1————Http協(xié)議。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、目錄

二、http協(xié)議簡介

1.http簡介

http是超文本傳輸協(xié)議的縮寫(Hyper Text Transfer Protocol),是從萬維網(wǎng)服務(wù)器傳送到本地瀏覽器的傳送協(xié)議

2.http的工作原理

HTTP的協(xié)議工作于客戶端——服務(wù)端的框架上,即客戶端向服務(wù)端發(fā)送請求,服務(wù)端接收請求后向客戶端發(fā)送響應(yīng)信息

3.http的特點

1.http是無連接的:無連接的含義是限制每次連接值處理一個請求,服務(wù)器處理完客戶端的請求后,并受到客戶的應(yīng)道后即斷開連接。

2.http是媒體獨立的:這意味著只要客戶端和服務(wù)端知道如何處理數(shù)據(jù)內(nèi)容,任何類型的數(shù)據(jù)類型都可以通過http協(xié)議發(fā)送,客戶端和服務(wù)端都知道使用合適的MIMR-type內(nèi)容類型

3.http是無狀態(tài)的:Http是無狀態(tài)協(xié)議:指對事物處理沒有記憶能力。

三、http協(xié)議的響應(yīng)步驟

七步驟:
安卓網(wǎng)絡(luò)請求1————Http協(xié)議

1.建立TPC連接

在HTTP工作開始之前, Web瀏覽器首先要通過網(wǎng)絡(luò)與Web服務(wù)器建立連接, 該連接是通過TCP來完成的, 該協(xié)議與IP協(xié)議共同構(gòu)建Internet, 即著名的TCP/IP協(xié)議族, 因此Internet又被稱作是TCP/IP網(wǎng)絡(luò).

HTTP是比TCP更高層次的應(yīng)用層協(xié)議,根據(jù)規(guī)則,有低層協(xié)議建立之后才能進行更高層協(xié)議的連接, 因此, 首先要建立TCP連接, 一般TCP連接的端口號是80.

tcp/ip 連接就是我們比較熟悉的三次握手

2、Web瀏覽器向Web服務(wù)器發(fā)送請求命令

一旦建立了TCP連接,Web瀏覽器就會向web服務(wù)器發(fā)送請求命令

3.Web瀏覽器發(fā)送請求頭信息

瀏覽器發(fā)送其請求命令后,還要以頭信息的形式向web服務(wù)器發(fā)送一些別的信息,這些信息用來描述瀏覽器自己,之后瀏覽器發(fā)送一空白行來通知服務(wù)器,表示它已經(jīng)結(jié)束了該頭信息的發(fā)送. 若是post請求, 還會在發(fā)送完請求頭信息之后發(fā)送請求體.

4.Web服務(wù)器的應(yīng)答

客戶機向服務(wù)機發(fā)出請求后,服務(wù)器會向客戶機會送應(yīng)答
應(yīng)答的第一部分是協(xié)議的版本號和應(yīng)答狀態(tài)碼

5.Web服務(wù)器向瀏覽器發(fā)送應(yīng)答頭信息

正如客戶端會隨同請求發(fā)送關(guān)于自身的信息一樣,服務(wù)器也會隨同應(yīng)答向用戶發(fā)送關(guān)于它自己的數(shù)據(jù)及被請求的文檔. 最后以一個空白行來表示頭信息發(fā)送到此結(jié)束.

6.Web服務(wù)器向瀏覽器發(fā)送數(shù)據(jù)

Web服務(wù)器向瀏覽器發(fā)送頭信息后, 它就以Content-Type應(yīng)答頭信息所描述的格式發(fā)送用戶所請求的實際數(shù)據(jù)

7.Web服務(wù)器關(guān)閉TCP連接

一般情況下, 一旦Web服務(wù)器向瀏覽器發(fā)送了請求數(shù)據(jù), 它就要關(guān)閉TCP連接. 如果瀏覽器或者服務(wù)器在其頭信息加入了這行代碼

Connection:keep-alive

TCP連接在發(fā)送后將仍然保持打開狀態(tài). 于是, 瀏覽器可以繼續(xù)通過相同的連接發(fā)送請求. 保持連接節(jié)省了為每個請求建立新連接所需的時間, 還節(jié)約了網(wǎng)絡(luò)帶寬.。

四、http的消息結(jié)構(gòu)

1.客戶端請求消息

客戶端發(fā)送一個HTTP請求到服務(wù)器的請求消息包括以下格式:請求行(request line)、請求頭部(header)、空行和請求數(shù)據(jù)四部分。
示例:

GET/sample.jspHTTP/1.1   		//請求行
Accept:image/gif.image/jpeg,*/* 		//請求頭部
Accept-Language:zh-cn
Connection:Keep-Alive
Host:localhost
User-Agent:Mozila/4.0(compatible'MEIS5.01;window NT5.0)
Accept-Encoding:gzip,deflate
											//空行
username=jingqiao&password=1234    //請求數(shù)據(jù)

請求的第一行是“方法URL議/版本”:GET/sample.jsp HTTP/1.1:

以上代碼中“GET”代表請求方法,“/sample.jsp”表示URI,“HTTP/1.1代表協(xié)議和協(xié)議的版本。
根據(jù)HTTP標準,HTTP請求可以使用多種請求方法。例如:HTTP1.1支持7種請求方法:GET、POST、HEAD、OPTIONS、PUT、DELETE和TARCE。在Internet應(yīng)用中,最常用的方法是GET和POST。
URL完整地指定了要訪問的網(wǎng)絡(luò)資源,通常只要給出相對于服務(wù)器的根目錄的相對目錄即可,因此總是以“/”開頭,最后,協(xié)議版本聲明了通信過程中使用HTTP的版本。

請求頭包含許多有關(guān)的客戶端環(huán)境和請求正文的有用信息。例如,請求頭可以聲明瀏覽器所使用的語言,請求正文的長度

2.服務(wù)端響應(yīng)消息

HTTP響應(yīng)也由四個部分組成:狀態(tài)行,消息報頭,空行和響應(yīng)正文。
示例:

HTTP/1.1 200 OK   		//
Server:Apache Tomcat/5.0.12			//
Date:Mon.60ct2003	 13:23:42   GMT
Content-Length:112
									//空行
<html>					//
<head>
<title>HTTP響應(yīng)示例<title>
</head>
<body>
Hello HTTP!
</body>
</html>									

狀態(tài)行:他表示通信所用的協(xié)議是HTTP1.1服務(wù)器已經(jīng)成功地處理了客戶端發(fā)送的請求(200表示成功)

HTTP/1.1 200 OK

3.響應(yīng)頭信息

這一節(jié)介紹上面請求,響應(yīng)的請求頭中各參數(shù)的含義:
安卓網(wǎng)絡(luò)請求1————Http協(xié)議

五、Http協(xié)議版本

Http到現(xiàn)在一共經(jīng)歷了3個版本的演化,,第一個HTTP協(xié)議誕生于1989年3月

1.Http 0.9

HTTP 0.9是第一個版本的HTTP協(xié)議,已過時。它的組成極其簡單,只允許客戶端發(fā)送GET這一種請求,且不支持請求頭。由于沒有協(xié)議頭,造成了HTTP 0.9協(xié)議只支持一種內(nèi)容,即純文本。不過網(wǎng)頁仍然支持用HTML語言格式化,同時無法插入圖片。

HTTP 0.9具有典型的無狀態(tài)性,每個事務(wù)獨立進行處理,事務(wù)結(jié)束時就釋放這個連接。由此可見,HTTP協(xié)議的無狀態(tài)特點在其第一個版本0.9中已經(jīng)成型。一次HTTP 0.9的傳輸首先要建立一個由客戶端到Web服務(wù)器的TCP連接,由客戶端發(fā)起一個請求,然后由Web服務(wù)器返回頁面內(nèi)容,然后連接會關(guān)閉。如果請求的頁面不存在,也不會返回任何錯誤碼。

2.Http 1.0

HTTP協(xié)議的第二個版本,第一個在通訊中指定版本號的HTTP協(xié)議版本,至今仍被廣泛采用。相對于HTTP 0.9 增加了如下主要特性

請求和響應(yīng)支持頭域
響應(yīng)對象以一共響應(yīng)狀態(tài)行開始
響應(yīng)對象不止限于超文本
開始支持POST方法,支持GET,HEAD方法
支持長連接(但默認還是短連接),緩存機制,以及身份認證

3.Http 1.1

HTTP協(xié)議的第三個版本是HTTP 1.1,是目前使用最廣泛的協(xié)議版本 。HTTP 1.1是目前主流的HTTP協(xié)議版本.

HTTP 1.1引入了許多的關(guān)鍵的性能優(yōu)化:keepalive連接,chunked編碼傳輸,字節(jié)范圍請求,請求流水線等

a.keepalive連接
允許HTTP設(shè)備在事務(wù)處理結(jié)束之后將TCP連接保持在打開的狀態(tài),一遍未來的HTTP請求重用現(xiàn)在的連接,直到客戶端或服務(wù)器端決定將其關(guān)閉為止。

在HTTP1.0中使用長連接需要添加請求頭 Connection: Keep-Alive,而在HTTP 1.1 所有的連接默認都是長連接,除非特殊聲明不支持( HTTP請求報文首部加上Connection: close )

b.chunked編碼傳輸
該編碼將實體分塊傳送并逐塊標明長度,直到長度為0塊表示傳輸結(jié)束, 這在實體長度未知時特別有用(比如由數(shù)據(jù)庫動態(tài)產(chǎn)生的數(shù)據(jù))

c.字節(jié)請求范圍
HTTP1.1支持傳送內(nèi)容的一部分。比方說,當客戶端已經(jīng)有內(nèi)容的一部分,為了節(jié)省帶寬,可以只向服務(wù)器請求一部分。該功能通過在請求消息中引入了range頭域來實現(xiàn),它允許只請求資源的某個部分。在響應(yīng)消息中Content-Range頭域聲明了返回的這部分對象的偏移值和長度。如果服務(wù)器相應(yīng)地返回了對象所請求范圍的內(nèi)容,則響應(yīng)碼206(Partial Content)

d.其他功能

請求頭和響應(yīng)消息都支持Host頭域
新增了一些方法
緩存處理,在1.0的基礎(chǔ)上增加了新特性,引入了實體標簽。

4.Http 2.0

HTTP 2.0是下一代HTTP協(xié)議,目前應(yīng)用還非常少。主要特點有:

a.多路復用(二進制分幀)
HTTP 2.0最大的特點: 不會改動HTTP 的語義,HTTP 方法、狀態(tài)碼、URI 及首部字段,等等這些核心概念上一如往常,卻能致力于突破上一代標準的性能限制,改進傳輸性能,實現(xiàn)低延遲和高吞吐量。而之所以叫2.0,是在于新增的二進制分幀層。在二進制分幀層上, HTTP 2.0 會將所有傳輸?shù)男畔⒎指顬楦〉南⒑蛶?并對它們采用二進制格式的編碼 ,其中HTTP1.x的首部信息會被封裝到Headers幀,而我們的request body則封裝到Data幀里面。

b.頭部壓縮
當一個客戶端向相同服務(wù)器請求許多資源時,像來自同一個網(wǎng)頁的圖像,將會有大量的請求看上去幾乎同樣的,這就需要壓縮技術(shù)對付這種幾乎相同的信息。

c.隨時復位
Http1.1一個缺點就是當Http信息由一定長度大小數(shù)據(jù)傳輸時,你不能方便地隨時停止它,中斷TCP連接的代價是昂貴的。使用HTTP2的RST_STREAM將能方便停止一個信息傳輸,啟動新的信息,在不中斷連接的情況下提高帶寬利用效率。

d.服務(wù)器端推流: Server Push
客戶端請求一個資源X,服務(wù)器端判斷也許客戶端還需要資源Z,在無需事先詢問客戶端情況下將資源Z推送到客戶端,客戶端接受到后,可以緩存起來以備后用。

e.優(yōu)先權(quán)和依賴
每個流都有自己的優(yōu)先級別,會表明哪個流是最重要的,客戶端會指定哪個流是最重要的,有一些依賴參數(shù),這樣一個流可以依賴另外一個流。優(yōu)先級別可以在運行時動態(tài)改變,當用戶滾動頁面時,可以告訴瀏覽器哪個圖像是最重要的,你也可以在一組流中進行優(yōu)先篩選,能夠突然抓住重點流。

六、http協(xié)議的請求方法

根據(jù)HTTP標準,HTTP請求可以使用多種請求方法。
HTTP1.0定義了三種請求方法: GET, POST 和 HEAD方法。
HTTP1.1新增了五種請求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。
安卓網(wǎng)絡(luò)請求1————Http協(xié)議

七、http協(xié)議的狀態(tài)碼

當瀏覽者訪問一個網(wǎng)頁時,瀏覽者的瀏覽器會向網(wǎng)頁的服務(wù)器發(fā)送請求。當瀏覽器就收并顯示網(wǎng)頁前,此網(wǎng)頁的服務(wù)器會返回一個包含HTTP狀態(tài)碼的信息頭(server header)用于響應(yīng)瀏覽器的請求

1.http狀態(tài)碼分類

http狀態(tài)碼由三個十進制數(shù)組組成,第一個十進制數(shù)組定義了狀態(tài)碼的類型,后兩個數(shù)字沒有分類的作用,http狀態(tài)碼分為5種狀態(tài)
安卓網(wǎng)絡(luò)請求1————Http協(xié)議

2.http狀態(tài)碼列表

安卓網(wǎng)絡(luò)請求1————Http協(xié)議
安卓網(wǎng)絡(luò)請求1————Http協(xié)議
安卓網(wǎng)絡(luò)請求1————Http協(xié)議文章來源地址http://www.zghlxwxcb.cn/news/detail-458028.html

到了這里,關(guān)于安卓網(wǎng)絡(luò)請求1————Http協(xié)議的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請求

    【HTTP 協(xié)議2】如何構(gòu)造 HTTP 請求

    各位讀者好, 我是小陳, 這是我的個人主頁, 希望我的專欄能夠幫助到你: ?? JavaSE基礎(chǔ): 基礎(chǔ)語法, 類和對象, 封裝繼承多態(tài), 接口, 綜合小練習圖書管理系統(tǒng)等 ?? Java數(shù)據(jù)結(jié)構(gòu): 順序表, 鏈表, 堆, 二叉樹, 二叉搜索樹, 哈希表等 ?? JavaEE初階: 多線程, 網(wǎng)絡(luò)編程, TCP/IP協(xié)議, HTTP協(xié)議

    2024年02月12日
    瀏覽(28)
  • 【HTTP 協(xié)議1】圖文詳解 HTTP 請求和應(yīng)答報文

    【HTTP 協(xié)議1】圖文詳解 HTTP 請求和應(yīng)答報文

    各位讀者好, 我是小陳, 這是我的個人主頁, 希望我的專欄能夠幫助到你: ?? JavaSE基礎(chǔ): 基礎(chǔ)語法, 類和對象, 封裝繼承多態(tài), 接口, 綜合小練習圖書管理系統(tǒng)等 ?? Java數(shù)據(jù)結(jié)構(gòu): 順序表, 鏈表, 堆, 二叉樹, 二叉搜索樹, 哈希表等 ?? JavaEE初階: 多線程, 網(wǎng)絡(luò)編程, TCP/IP協(xié)議, HTTP協(xié)議

    2024年02月12日
    瀏覽(51)
  • HTTP協(xié)議,請求響應(yīng)

    HTTP協(xié)議,請求響應(yīng)

    2024年02月07日
    瀏覽(27)
  • HTTP協(xié)議請求詳解

    HTTP協(xié)議請求詳解

    ??????今天給大家分享的是 HTTP 請求部分的基礎(chǔ)知識。 清風的CSDN博客 ?????????希望我的文章能對你有所幫助,有不足的地方還請各位看官多多指教,大家一起學習交流! ??????動動你們發(fā)財?shù)男∈?,點點關(guān)注點點贊!在此謝過啦!哈哈哈!?????? 目

    2024年01月17日
    瀏覽(23)
  • HTTP協(xié)議的請求方式有哪些?

    HTTP協(xié)議的請求方式共有9種,分別為: 1. GET請求:用于請求獲取Request-URI所標識的資源。 2. POST請求:在Request-URI所標識的資源后增加新的數(shù)據(jù)。 3.?HEAD請求:請求獲取由Request-URI所標識的資源的響應(yīng)消息報頭。 4. PUT請求:請求服務(wù)器存儲或修改一個資源,并用Request-URI作為其

    2024年02月15日
    瀏覽(17)
  • Nginx接收Http協(xié)議請求轉(zhuǎn)發(fā)使用Https協(xié)議

    公司使用阿里的apigateway,規(guī)定不太友好,同是SIT環(huán)境,A系統(tǒng)的SIT1環(huán)境居然不能調(diào)用B系統(tǒng)的SIT2環(huán)境的接口。因為各個系統(tǒng)之間部署的SIT環(huán)境數(shù)量不同A系統(tǒng)可能只有1套,B系統(tǒng)可能有8套,這樣的話,可能會隨時切換調(diào)用B系統(tǒng)的環(huán)境,管理員不允許,于是想著用Nginx做下轉(zhuǎn)發(fā)。

    2024年02月08日
    瀏覽(28)
  • HTTP 協(xié)議中的請求頭參數(shù)

    HTTP 協(xié)議中的請求頭參數(shù)

    本文對http頭部字段:Connection、Content-Length、Transfer-Encoding 、Content-Encoding、Content-Type 等進行介紹。 POST https://1.26.1.10:22/reportquery/v1/cc HTTP/1.1 Accept: / User-Agent: abcd Host: 1.26.1.10:22 Connection: Keep-Alive Content-Type: application/json;charset=UTF-8 Content-Length: 170 SequenceId: 6 ProvinceId: 32 X-TerminalNo:

    2023年04月09日
    瀏覽(47)
  • HTTP基礎(chǔ):學習HTTP協(xié)議的基本知識,了解請求和響應(yīng)的過程

    HTTP(Hypertext Transfer Protocol,超文本傳輸協(xié)議)是一種用于傳輸超媒體文檔(如HTML)的應(yīng)用層協(xié)議,它是Web中最基本的協(xié)議。 HTTP請求和響應(yīng)都是由客戶端和服務(wù)器之間進行的。 一個完整的HTTP請求由以下幾個部分組成: 請求行:包括請求方法(GET、POST等)、請求的URI和HTTP協(xié)

    2024年02月12日
    瀏覽(24)
  • HTTP/1.1協(xié)議中的請求報文

    2023年8月30日,周三上午 目錄 概述 請求報文示例 詳述 HTTP/1.1協(xié)議的請求報文由以下幾個部分組成: 請求行(Request Line) 請求頭部(Request Headers) 空行(Blank Line) 請求體(Request Body) 需要注意的是,請求頭部是可選的,而請求行和空行是必需的。 在這個示例中, 請求行指

    2024年02月10日
    瀏覽(26)
  • Java課題筆記~ HTTP協(xié)議(請求和響應(yīng))

    Java課題筆記~ HTTP協(xié)議(請求和響應(yīng))

    Servlet最主要的作用就是處理客戶端請求,并向客戶端做出響應(yīng)。為此,針對Servlet的每次請求,Web服務(wù)器在調(diào)用service()方法之前,都會創(chuàng)建兩個對象 分別是HttpServletRequest和HttpServletResponse。 其中HttpServletRequest用于封裝HTTP請求消息,簡稱request對象; HttpServletResponse用于封裝HTT

    2024年02月13日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包