萬維網WWW(World Wide Web),萬維網是一個大規模的、聯機式的信息儲藏所,英文簡稱為Web。
萬維網用鏈接的方法能非常方便地從互聯網上的一個站點訪問另一個站點(也就是所謂的“鏈接到另一個站點”),
從而主動地按需獲取豐富的信息。
超文本是萬維網的基礎。
萬網網以客戶服務器方式工作。上面所說的瀏覽器就是在用戶主機上的萬維網客戶程序。萬維網文檔所駐留
的主機則運行服務器程序,因此這台主機也稱為萬維網服務器。客戶程序向服務器程序發出請求,服務器程序
向客戶程序送回客戶所要的萬維網文檔。在一個客戶程序主窗口上顯示出的萬維網文檔稱為頁面(page)。
從以上所述可以看出,萬維網必須解決以下幾個問題:
1、怎樣標志分布在整個互聯網上的萬維網文檔? 統一資源定位符URL
2、用什么樣的協議來實現萬維網上的各種鏈接?超文本傳送協議HTTP
3、怎樣使不同作者創作的不同風格的萬維網文檔,都能在互聯網上的各種主機上顯示出來,同時使用戶清楚地知道在什么地方存在着鏈接? 超文本標記語言HTML
4、怎樣使用戶能夠很方便地找到所需的信息? 搜索工具
統一資源定位符URL
統一資源定位符URL是用來表示從互聯網上得到的資源位置和訪問這些資源的方法。
URL的一般形式由以下四個部分組成:
<協議>://<主機>:<端口>/<路徑>
http://www.tsinghua.edu.cn/index.jsp
這里省略了默認的端口號80。(HTTP的默認端口號是80)。
URL的<協議>就是指使用什么協議來獲取該萬維網的文檔。現在最常用的協議就是http(超文本傳送協議HTTP),其次是ftp(文件傳送協議FTP)。
超文本傳送協議HTTP
HTTP協議定義了瀏覽器(即萬維網客戶進程)怎樣向萬維網服務器請求萬維網文檔,以及服務器怎樣把文檔傳送給瀏覽器。從層次的角度看,HTTP是面向事務的應用層協議。
(所謂事務就是指一系列的信息交換,而這一系列的信息交換是一個不可分割的整體,也就是說,要么所有的信息交換都完成,要么異常交換都不進行。)
HTTP使用了面向連接的TCP作為運輸層協議,保證了數據的可靠傳輸。HTTP不必考慮數據在傳輸過程中被丟棄后又怎樣被重傳。但是,HTTP協議本身是無連接的。
代理服務器(proxy server)是一種網絡實體,它又稱為萬維網高速緩存(Web cache)。代理服務器把最近的一些請求和響應暫存在本地磁盤中。當新請求到達時,若代理服務器發現這個
請求與暫時存放的請求相同,就返回暫存的響應,而不需要按URL的地址再次去互聯網訪問該資源。代理服務器可在客戶端或服務器端工作,也可在中間系統上工作。
HTTP有兩類報文:
1、請求報文——從客戶向服務器發送請求報文。
2、響應報文——從服務器到客戶的回答。
開始行(在請求報文中的開始行叫做請求行,響應報文中的開始行叫做狀態行。)
首部行
實體主體
下面重點講解一下GET請求和POST的區別:
GET請求的參數放在URL里面,POST請求參數放在請求體里面;
GET請求的URL傳參有長度限制,而POST請求沒有長度限制;
GET請求的參數只能是ASCII碼,所以中文需要URL編碼,而POST請求傳參沒有這個限制;
GET比POST更不安全,因為參數直接暴露在URL上,所以不能用來傳遞敏感信息;
GET請求會被瀏覽器主動cache,而POST不會,除非手動設置;
其實,GET和POST本質上兩者沒有任何區別。他們都是HTTP協議中的請求方法。底層實現都是基於TCP/IP協議。
好文見:https://www.cnblogs.com/logsharing/p/8448446.html
請求報文的第一行“請求行”:方法,請求資源的URL,HTTP的版本
響應報文的第一行“狀態行”:HTTP的版本,狀態碼,解釋狀態碼的簡單短語
狀態碼都是三位數字的,分為5大類。
1xx表示通知信息,如請求收到了或正在進行處理。
2xx表示成功,如接受或知道了。
3xx表示重定向,如要完成請求還必須采取進一步的動作。
4xx表示客戶的差錯,如請求中有錯誤的語法或不能完成。
5xx表示服務器的差錯,如服務器失效無法完成請求。
歡迎評論,共同進步!!