WWW全球資訊網知識小結
前段時間面試,因為沒有參加過社會招聘,對於應用層不是考試重點的我一臉懵,翻出課本,上網查了些資料,總結一下,只有總結了東西才是自己的。
一.什麼是全球資訊網:
全球資訊網是一個大規模的,聯機式的資訊儲存所,英文簡稱Web。
二.超文字,超媒體:
所謂超文字是指包括制定其它文件的連結的文字(text)。
所謂超媒體是指出了包涵文件text之外,還包含其它表示方式的資訊,如圖形,影象,聲音,動畫,視訊影象等。
三.實現全球資訊網需要的幾個必須解決的關鍵問題
1.怎樣標誌分佈在整個網際網路上的全球資訊網文件?-----》URL
URL(統一資源定為符)
資源位置和訪問這些資源的方法;資源地址;網際網路上的所有資源,都有一個唯一的確定的URL。
URL的一般形式由一下四個部分組成:
<協議>://<主機>:<埠>/<路徑>
http://localhost:8080/工程路徑
2.用什麼樣的協議來實現全球資訊網上的各種連結?-----》HTTP
HTTP(超文字傳輸協議)
1)對客戶端和伺服器端之間資料傳輸的格式規範,格式簡稱為“超文字傳輸協議”。
2)HTTP協議本身是無連結:為了保證資料的可靠傳輸,HTTP使用了面相連結的TCP作為運輸層協議。因此不用考慮資料在 傳輸過程中被丟棄後又怎樣被重傳。
3)HTTP協議是無狀態的(stateless):伺服器不記錄使用者是否訪問過也不記錄訪問次數。
簡化了伺服器的設計,是伺服器更容易支援大量併發的HTTP請求。
無狀態協議對於事務處理沒有記憶能力。缺少狀態意味著如果後續處理需要前面的資訊,那是無法取到的。
為了解決這個問題:通過Cookie;通過Session會話儲存。
4)HTTP協議請求一次全球資訊網文件所需要的時間:
3.怎樣使不同作者創作的不同風格的全球資訊網文件,都能在網際網路上的各種主機上顯示出來,同時使用使用者清楚的知道在什麼地 方存在著連結?-----》HTML
四.HTTP的報文結構
1)請求報文--從客戶向伺服器傳送請求報文。
請求行:包含請求方法;URI;HTTP版本資訊
請求首部欄位
請求內容實體
例子:
GET /dir/index/htm HTTP/1.1 {請求行使用了相對URL}
Host:www.baidu.com {此行是首部行的開始。這行給出主機的域名}
Connection:close {告訴伺服器傳送完請求的文件後就可釋放連結}
User-Agent:Mozilla/5.0 {表明使用者代理是實用火狐瀏覽器Firefox}
Accept-Language:cn {表示擁護希望優先的到中文版本的文件}
2)響應報文--從伺服器到客戶的回答。
狀態行:包含HTTP版本;狀態碼;狀態碼的原因短語
響應首部欄位
響應內容實體
例子:
HTTP/1.1 301 Moved Permanently {永久性地轉移了}
Location:http://www.baidu.com/ee/index.html {新的URL}
狀態碼:都是三位數字,分5大類。
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
:伺服器正忙
五.HTTP協議中有哪些請求方式?
GET:用於請求訪問已經被URI(統一資源識別符號)識別的資源,可以通過URL傳參給伺服器。
POST:用於傳輸資訊給伺服器,主要功能與GET方法類似,但一般推薦使用POST方式。
PUT:傳輸檔案,保文主體中包含檔案內容,儲存到對應URI位置。
HEAD:獲得報文首部,與GET方法類似,只是不返回報文主體,一般用於驗證URI是否有效。
DELETE:刪除檔案,與PUT方法相反,刪除對應URI位置的檔案。
OPTIONS:查詢響應URI支援的HTTP方法。
注意:GET方法和POST方法的區別!!!!
區別一:
1)get傳輸資料通過URL請求,以filed = value 的形式,置於URL後,並用“?”連線,多個請求資料間用“&”連 接,如:http://127.0.0.1/Test/login.action?name=admin&password=admin,這個過程使用者是可見的。
2)post傳輸資料通過Http的post機制,將欄位與對應值封裝在請求實體中傳送給伺服器,這個過程對使用者是不可見 的。
區別二:
1)get重點在從伺服器上獲取資源。
2)post重點在向伺服器傳送資料。
區別三:
1)get傳輸的資料量小,因為受URL長度限制,但效率較高。
2)post傳輸大量資料,所以上傳檔案時只能用post方式。
區別四:
1)get是不安全的,因為URL是可見的,可能會洩露私密資訊。
2)post較get安全性較高。
區別五:
1)get方式只能支援ASCII字元,向伺服器傳的中文字元可能會亂碼。
2)post支援標準字符集,可以正確傳遞中文字元。
六.HTTP與HTTPS優缺點?
通訊使用明文不加密,內容可能被竊聽,也就是被抓包分析。
不驗證通訊方身份,可能遭到偽裝
無法驗證報文完整性,可能被篡改
HTTPS就是HTTP加上加密處理(一般是SSL安全通訊線路)+認證+完整性保護
七.HTTP優化
利用負載均衡優化和加速HTTP應用
利用HTTP Cache來優化網站
八.HTTP協議有哪些特徵?
1)支援客戶/伺服器模式;
2)簡單快速;
3)靈活;
4)無連線;
5)無狀態;
九.網路傳輸的過程:
相關文章
- WWW全球資訊網核心基本組成
- Flex知識小結Flex
- 小知識總結
- 【JAVA】- 知識點小結Java
- promise知識點小結Promise
- Vue重要知識小結Vue
- HTTP知識點小結HTTP
- 硬碟知識小總結硬碟
- 儲存知識小結
- makefile 知識點小結
- 前端須知的 Cookie 知識小結前端Cookie
- node知識點小結(一)
- 小知識總結-20個
- shell知識點小結2
- WinForm&&DEV知識小結ORMdev
- awk知識點小結1
- shell知識點小結1
- 資訊熵相關知識總結熵
- 雜湊表知識點小結
- MySQL基礎知識小結(一)MySql
- 總結的小知識點(一)
- oracle事務知識點小結Oracle
- 手機輻射知識小科普——資訊圖
- Google首頁塗鴉致敬 WWW全球資訊網發明30週年Go
- RxJava 知識梳理(3) RxJava2 基礎知識小結RxJava
- 前端知識點小結--node、express、mongodb前端ExpressMongoDB
- Heartbeat基礎知識-運維小結運維
- 決策樹相關知識小結
- JavaScript效能優化小知識總結JavaScript優化
- 《結網》的概念知識吸取
- 應用層總結-全球資訊網
- 網路路由閘道器小知識路由
- 2021/06/02知識點小結
- 有關Es6知識的小結
- java基礎語法知識小結(1)Java
- 文件知識庫的演進和小結
- JavaScript 效能優化的小知識總結JavaScript優化
- Keepalived基礎知識-運維小結運維