国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > WEB開發(fā) > 正文

HTTP協(xié)議學習

2024-04-27 15:13:28
字體:
供稿:網(wǎng)友

什么是HTTP協(xié)議? 協(xié)議是指計算機通信網(wǎng)絡(luò)中兩臺計算機之間進行通信所必須共同遵守的規(guī)定或規(guī)則,超文本傳輸協(xié)議(HTTP)是一種通信協(xié)議,它允許將超文本標記語言(HTML)文檔從Web服務(wù)器傳送到客戶端的瀏覽器 HTTP協(xié)議的主要特點可概括如下: 1.支持客戶/服務(wù)器模式。 2.簡單快速:客戶向服務(wù)器請求服務(wù)時,只需傳送請求方法和路徑。請求方法常用的有GET、HEAD、POST。每種方法規(guī)定了客戶與服務(wù)器聯(lián)系的類型不同。由于HTTP協(xié)議簡單,使得HTTP服務(wù)器的程序規(guī)模小,因而通信速度很快。 3.靈活:HTTP允許傳輸任意類型的數(shù)據(jù)對象。正在傳輸?shù)念愋陀蒀ontent-Type加以標記。 4.無連接:無連接的含義是限制每次連接只處理一個請求。服務(wù)器處理完客戶的請求,并收到客戶的應(yīng)答后,即斷開連接。采用這種方式可以節(jié)省傳輸時間。 5.無狀態(tài):HTTP協(xié)議是無狀態(tài)協(xié)議。無狀態(tài)是指協(xié)議對于事務(wù)處理沒有記憶能力。缺少狀態(tài)意味著如果后續(xù)處理需要前面的信息,則它必須重傳,這樣可能導致每次連接傳送的數(shù)據(jù)量增大。另一方面,在服務(wù)器不需要先前信息時它的應(yīng)答就較快。 Web服務(wù)器,瀏覽器,代理服務(wù)器 瀏覽器發(fā)送請求,Web服務(wù)器收到請求后給予響應(yīng),做出處理,并且發(fā)送處理結(jié)果Response給瀏覽器,瀏覽器收到后再頁面中展示出來。如果檢測出收到的結(jié)果中包含CSS,圖片等文件,可能需要多次請求瀏覽器才能在網(wǎng)頁上完整展現(xiàn)出來。 這里寫圖片描述 我們的Request 有可能是經(jīng)過了代理服務(wù)器,最后才到達Web服務(wù)器的。 過程如下圖所示 這里寫圖片描述 代理服務(wù)器就是網(wǎng)絡(luò)信息的中轉(zhuǎn)站,有什么功能呢? 1. 提高訪問速度, 大多數(shù)的代理服務(wù)器都有緩存功能。 2. 突破限制, 也就是FQ了 3. 隱藏身份。 URL詳解 URL(Uniform Resource Locator) 地址用于描述一個網(wǎng)絡(luò)上的資源, 基本格式如下 schema://host[:port#]/path/…/[?query-string][#anchor] scheme 指定低層使用的協(xié)議(例如:http, https, ftp) host HTTP服務(wù)器的ip地址或者域名 port# HTTP服務(wù)器的默認端口是80,這種情況下端口號可以省略。如果使用了別的端口,必須指明,例如 http://www.cnblogs.com:8080/ path 訪問資源的路徑 query-string 發(fā)送給http服務(wù)器的數(shù)據(jù) anchor- 錨

URL 的一個例子 http://www.mywebsite.com/sj/test/test.aspx?name=sviergn&x=true#stuff Schema: http host: www.mywebsite.com path: /sj/test/test.aspx Query String: name=sviergn&x=true Anchor: stuff HTTP協(xié)議是無狀態(tài)的 http協(xié)議是無狀態(tài)的,同一個客戶端的這次請求和上次請求是沒有對應(yīng)關(guān)系,對http服務(wù)器來說,它并不知道這兩個請求來自同一個客戶端。 為了解決這個問題, Web程序引入了Cookie機制來維護狀態(tài) 打開一個網(wǎng)頁需要瀏覽器發(fā)送很多次Request 1. 當你在瀏覽器輸入URL http://www.cnblogs.com 的時候,瀏覽器發(fā)送一個Request去獲取 http://www.cnblogs.com 的html. 服務(wù)器把Response發(fā)送回給瀏覽器. 2. 瀏覽器分析Response中的 HTML,發(fā)現(xiàn)其中引用了很多其他文件,比如圖片,CSS文件,JS文件。 3. 瀏覽器會自動再次發(fā)送Request去獲取圖片,CSS文件,或者JS文件。 4. 等所有的文件都下載成功后。 網(wǎng)頁就被顯示出來了。 使用fiddler捕捉瀏覽器請求 Get和Post方法的區(qū)別 Http協(xié)議定義了很多與服務(wù)器交互的方法,最基本的有4種,分別是GET,POST,PUT,DELETE. 一個URL地址用于描述一個網(wǎng)絡(luò)上的資源,而HTTP中的GET, POST, PUT, DELETE就對應(yīng)著對這個資源的查,改,增,刪4個操作。 我們最常見的就是GET和POST了。GET一般用于獲取/查詢資源信息,而POST一般用于更新資源信息. HTTP請求方法 這里寫圖片描述

我們看看GET和POST的區(qū)別

GET提交的數(shù)據(jù)會放在URL之后,以?分割URL和傳輸數(shù)據(jù),參數(shù)之間以&相連,如EditPosts.aspx?name=test1&id=123456. POST方法是把提交的數(shù)據(jù)放在HTTP包的Body中.

GET提交的數(shù)據(jù)大小有限制(因為瀏覽器對URL的長度有限制),而POST方法提交的數(shù)據(jù)沒有限制.

GET方式需要使用Request.QueryString來取得變量的值,而POST方式通過Request.Form來獲取變量的值。

GET方式提交數(shù)據(jù),會帶來安全問題,比如一個登錄頁面,通過GET方式提交數(shù)據(jù)時,用戶名和密碼將出現(xiàn)在URL上,如果頁面可以被緩存或者其他人可以訪問這臺機器,就可以從歷史記錄獲得該用戶的賬號和密碼.


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 额尔古纳市| 闽清县| 金阳县| 密云县| 长沙县| 晋宁县| 泰州市| 灵武市| 高州市| 徐汇区| 丹寨县| 同仁县| 屯门区| 锦屏县| 阜城县| 安多县| 清流县| 灵石县| 宣武区| 大城县| 苏尼特右旗| 磐安县| 双鸭山市| 德清县| 嵩明县| 澳门| 蒙阴县| 张家口市| 石门县| 明溪县| 石棉县| 当雄县| 巴楚县| 雷山县| 青阳县| 哈巴河县| 兴国县| 德庆县| 东台市| 开远市| 广安市|