HTTP協(xié)議,即超文本傳輸協(xié)議(Hypertext transfer protocol)。是一種詳細(xì)規(guī)定了瀏覽器和萬(wàn)維網(wǎng)(WWW = World
Wide Web)服務(wù)器之間互相通信的規(guī)則,通過(guò)因特網(wǎng)傳送萬(wàn)維網(wǎng)文檔的數(shù)據(jù)傳送協(xié)議。它允許將超文本標(biāo)記語(yǔ)言(HTML)文檔從Web服務(wù)器傳送到客戶(hù)端的瀏覽器。
HTTP是一個(gè)簡(jiǎn)單的請(qǐng)求-響應(yīng)協(xié)議,它通常運(yùn)行在TCP之上,是一個(gè)無(wú)狀態(tài)的協(xié)議。它指定了客戶(hù)端可能發(fā)送給服務(wù)器什么樣的消息以及得到什么樣的響應(yīng)。請(qǐng)求和響應(yīng)消息的頭以ASCII碼形式給出;而消息內(nèi)容則具有一個(gè)類(lèi)似MIME的格式。
在Internet中所有的傳輸都是通過(guò)TCP/IP進(jìn)行的。HTTP協(xié)議作為T(mén)CP/IP模型中應(yīng)用層的協(xié)議也不例外。HTTP協(xié)議通常承載于TCP協(xié)議之上,有時(shí)也承載于TLS或SSL協(xié)議層之上,這個(gè)時(shí)候,就成了我們常說(shuō)的HTTPS。如下圖所示:
HTTP默認(rèn)的端口號(hào)為80,HTTPS的端口號(hào)為443。
瀏覽網(wǎng)頁(yè)是HTTP的主要應(yīng)用,但是這并不代表HTTP就只能應(yīng)用于網(wǎng)頁(yè)的瀏覽。HTTP是一種協(xié)議,只要通信的雙方都遵守這個(gè)協(xié)議,HTTP就能有發(fā)揮其強(qiáng)大的功能。比如辦公常用的微信、QQ、迅雷、百度網(wǎng)盤(pán)、大型游戲、云服務(wù)器等都會(huì)使用到HTTP協(xié)議或者其他協(xié)議。
?
微軟 .NET 平臺(tái)針對(duì) HTTP 的操作做了大量的封裝,讓開(kāi)發(fā)者使用起來(lái)更加的簡(jiǎn)單。在 System.Net 命名空間下提供了
HttpWebRequest 與 HttpWebResponse
類(lèi)。.NET開(kāi)發(fā)者使用這2個(gè)類(lèi)即可實(shí)現(xiàn)客戶(hù)端與服務(wù)器的數(shù)據(jù)、Office文檔、圖片、音頻、視頻等文件的上傳與下載等功能。
本系列文章詳細(xì)介紹了 HttpWebRequest 與 HttpWebResponse 類(lèi)以及其重要的屬性、方法,最后提供了封裝好的通用方法。
?C# HTTP系列1 HttpWebRequest 類(lèi)
<https://www.cnblogs.com/SavionZhang/p/11392709.html>
?C# HTTP系列2 HttpWebReponse 類(lèi)
<https://www.cnblogs.com/SavionZhang/p/11393547.html>
?C# HTTP系列3 HttpWebRequest.ContentType 屬性
<https://www.cnblogs.com/SavionZhang/p/11394249.html>
?C# HTTP系列4 HttpWebRequest.CookieContainer 屬性
<https://www.cnblogs.com/SavionZhang/p/11394405.html>
?C# HTTP系列5 HttpWebResponse.StatusCode 屬性
<https://www.cnblogs.com/SavionZhang/p/11394494.html>
?C# HTTP系列6 HttpWebResponse.StatusCode 響應(yīng)代碼中文詳解
<https://www.cnblogs.com/SavionZhang/p/11394524.html>
?C# HTTP系列7 HttpWebRequest.Method 屬性
<https://www.cnblogs.com/SavionZhang/p/11394734.html>
?C# HTTP系列8 GET與POST 對(duì)比說(shuō)明 <https://www.cnblogs.com/SavionZhang/p/11396403.html>
?C# HTTP系列9 GET與POST 示例 <https://www.cnblogs.com/SavionZhang/p/11413218.html>
?C# HTTP系列10 form表單的 enctype 屬性
<https://www.cnblogs.com/SavionZhang/p/11413314.html>
?C# HTTP系列11 以普通文件流方式上傳文件遠(yuǎn)程服務(wù)器
<https://www.cnblogs.com/SavionZhang/p/11419532.html>
?C# HTTP系列12 以form-data方式上傳鍵值對(duì)集合到遠(yuǎn)程服務(wù)器
<https://www.cnblogs.com/SavionZhang/p/11419559.html>
?C# HTTP系列13 以form-data方式上傳多個(gè)文件以及鍵值對(duì)集合到遠(yuǎn)程服務(wù)器
<https://www.cnblogs.com/SavionZhang/p/11419778.html>
?
熱門(mén)工具 換一換
