1. 程式人生 > >一個菜鳥的http心得(一)、概述

一個菜鳥的http心得(一)、概述

前言

不知道寫啥,不寫感覺缺點啥,糾結(¬、¬)

最初的HTTP

90年代初,為了共享知識和資訊,一些人提出了一些理念,希望藉助多文件之間的相互關聯性,形成可相互參閱的WWW(world wide web,全球資訊網)。
作為文件傳輸協議的Http協議即是WWW構建技術中的重要一環。還有兩項構建技術分別是超文字標記語言Html和指定文件地址的URL(Uniform Resource Location,統一資源定位符)
這個時候,HTTP的主要作用是:傳輸HTML檔案

HTTP的發展

1996年,HTTP/1.0作為標準被公佈。
1999年,基於RFC2616標準的HTTP/1.1協議,是目前最主流的HTTP協議版本。
由發展來看,作為WEB文件傳輸協議的HTTP協議版本幾乎沒有更新了。新一代的2.0版本不斷在發展,未來可以更加廣泛的應用在除了WEB場景外的其他場景上。

一次普通的HTTP請求過程中發生的事

在這裡插入圖片描述

一個老問題:URI、URL?

URI全名,Uniform Resource Identifier,中文翻譯過來:統一資源標誌符
URL全名,Uniform Resource Location,中文翻譯過來:統一資源定位符

名字就可以看出來差別:URI注重對資源的標誌,URL注重對資源的定位,大白話就是說,URI只需要唯一標誌一個資源就行了,而URL需要定位到這個資源,提供訪問方式。

URI

URI以scheme和冒號開頭。Scheme用大寫/小寫字母開頭,後面為空或者跟著更多的大寫/小寫字母、數字、加號、減號和點號。冒號把scheme與scheme-specific-part分開了,並且scheme-specific-part的語法和語義(意思)由URI的名字空間決定。

[scheme:] scheme-specific-part

URI支援的scheme有http、https、ftp、mailto、magnet、telnet、data、file、nfs、gopher、ldap等

具體例子:

很亂?其實並不是,URI的具體語法規則會根據scheme變化,所以看起來很亂,具體到某一種具體的scheme,還是比較好理解的,比如mailto:[email protected]
而且,有沒有發現一個問題,這些例子中,第一個mailto協議和第三個http協議的例子中的資源都可以訪問的到,二四中的資源是訪問不到的,也即是說,一三兩個例子是URL,二四則不是。即URI>URL。

URL

URL唯一地標識一個資源在Internet上的位置。不管用什麼方法表示,只要能定位一個資源,就叫URL。
URL是URI的一種,不僅標誌了WEB資源,還指定了操作獲取方式,同時,指出了主要訪問機制和網路位置。
所以我們可以認為,URL是scheme比較特殊的URI,因為這些scheme指定了資源的操作獲取方式和訪問機制以及網路位置。
URL格式:
在這裡插入圖片描述

  1. 協議
    指定使用的傳輸協議,如:http、https、ftp等

  2. 登入資訊
    可選,指使用者名稱和密碼作為從伺服器端獲取資源時必要的登入資訊(身份認證)。

  3. 伺服器埠
    可選,指定伺服器連線的網路埠。,若省略則使用該協議的預設埠。

  4. 檔案路徑
    指定伺服器上的路徑來定位指定的資源。

  5. 引數:
    可選,用於給動態網頁(如使用CGI、ISAPI、PHP/JSP/ASP/ASP.NET等技術製作的網頁)傳遞引數,可有多個引數,用“&”符號隔開,每個引數的名和值用“=”符號隔開。

  6. 片段:
    可選,片段用於指定網路資源中的片斷。html頁面中片段則是描點。例如一個網頁中有多個名詞解釋,可使用片段可直接定位到某一名詞解釋(描點的位置)。

以HTTP協議來舉個例子:

http://optimus/posts/hello.html#intro

http://
表示訪問資源的方式

optimus/posts/hello.html
表示資源存放的位置

#intro
表示資源

總結:
如果URI的scheme,可以指定資源獲取方式以及網路位置的比較特殊,那麼這個URI就是一個URL。(理解的不對希望大佬打臉啊)

相關推薦

一個http心得()概述

前言 不知道寫啥,不寫感覺缺點啥,糾結(¬、¬) 最初的HTTP 90年代初,為了共享知識和資訊,一些人提出了一些理念,希望藉助多文件之間的相互關聯性,形成可相互參閱的WWW(world wide web,全球資訊網)。 作為文件傳輸協議的Http協議即是WWW

《圖解HTTP 彩色版》pdf附網盤下載連結+(附一個的java學習之路)

技術書閱讀方法論 一.速讀一遍(最好在1~2天內完成) 人的大腦記憶力有限,在一天內快速看完一本書會在大腦裡留下深刻印象,對於之後複習以及總結都會有特別好的作用。 對於每一章的知識,先閱讀標題,弄懂大概講的是什麼主題,再去快速看一遍,不懂也沒有關係,但是一定要在不懂的

一個半年的遊戲測試的工作心得

     5)個人習慣   測試用例設計原則 1、測試用例的代表性: 能夠代表並覆蓋各種合理的和不合理的、合法的和非法的、邊界的和越界的以及極限的輸入資料、操作和環境設定等。 2、測試結果的可判定性: 即測試執行結果的正確性是可判定的,每一個測試用例都應有相應的期望結果。 3、測試結果的可再現性: 即對同

一個java入行年總結

 一年總結 1.接觸程式設計(2016-5-14): 本人,從10歲開始玩遊戲 ,玩到28歲,雖然大學的時候也接觸過C,但是覺得學起來太費勁,還是玩遊戲好,我26歲的時候開始玩一款手遊《神武》,上班

《SpringMVC從入門到放肆》概述

jsp 出現 響應 ssp xmlns obj ext 編程 size 一、SpringMVC概述 View Service Dao DB Spring MVC interface interface Mysql impls

Linux——常見命令 查看及創建目錄文件等命令

相對路徑 時間 源文件 權限 保存 pro 目錄 ctr 文檔 命令行提示符 [root@localhost ~]# [當前用戶名@主機名 當前所在目錄]$ linux 超級用戶 root window 超級用戶 administartor # 超級用戶 $ 普

概述

項目管理 問題 bsp 部署 進一步 內容 新的 單元 詳細信息 1、引言     你能搜到這個教程,說明你對 Maven 感興趣,但是又不是太理解。那麽接下來這個系列的教程將會詳細講解 Maven 的用法,相信你看完之後,一定能對 Maven 的理解更進一步! 回到頂

關於敏捷開發,一個程序猿有話說

敏捷開發框架、二次開發、前端 關於敏捷開發,一個菜鳥程序猿有話說 離開學校,已經三年時間了,要說成功遠遠談不上,勉強算的上一個合格的程序員,因為十分熱愛IT行業,所以很想把工作三年來的一些工作心得與大家分享,希望對剛出道的小夥伴們有所幫助。 初入上海,看上的是機會

Java程式設計師從笨之()開發環境搭建,基本語法,字串,陣列

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

2018 moeCTF新生題-----一個的部分WP

嗯嗯,畢竟我還是個資訊保安的小菜鳥,就去看看題目練練手,一起加油吧                                 &n

關於敏捷開發,一個程式猿有話說

關於敏捷開發,一個菜鳥程式猿有話說   離開學校,已經三年時間了,要說成功遠遠談不上,勉強算的上一個合格的程式設計師,因為十分熱愛IT行業,所以很想把工作三年來的一些工作心得與大家分享,希望對剛出道的小夥伴們有所幫助。 初入上海,看上的是機會多,卻忽略了高消費,房租一個月300

一個裹裹小程式吧

新手寫小程式並不簡單,這是我的第一次嘗試學習到了很多。最近雙十一過後,每天不是拿快遞就是去拿快遞的路上,翻開手機應用裡的菜鳥裹裹檢視快遞是很方便的,當我在微信端搜尋菜鳥裹裹小程式時,卻沒有發現,於是便想自己動手仿app版寫一個菜鳥裹裹的小程式,對其中的快遞查詢物流跟蹤很有興趣。 專案預覽圖

重拾心態,一個的自我對話

        早上心態崩了,為什麼這些東西這麼難,這些東西到底有什麼用?         好吧,我又一次懷疑人生了,但是腦海中一直有一個聲音反駁那個問題:“學這些有什麼用?又用不到!”。         我好像把"不會"與"不用"因果關係弄顛倒了,你是因為 不用才不會

《TCP IP詳解卷:協議 原書第2版》pdf附網盤下載連結+(附一個的java學習之路)

技術書閱讀方法論 一.速讀一遍(最好在1~2天內完成) 人的大腦記憶力有限,在一天內快速看完一本書會在大腦裡留下深刻印象,對於之後複習以及總結都會有特別好的作用。 對於每一章的知識,先閱讀標題,弄懂大概講的是什麼主題,再去快速看一遍,不懂也沒有關係,但是一定要在不懂的

《演算法導論中文版》pdf附網盤下載連結+(附一個的java學習之路)

技術書閱讀方法論 一.速讀一遍(最好在1~2天內完成) 人的大腦記憶力有限,在一天內快速看完一本書會在大腦裡留下深刻印象,對於之後複習以及總結都會有特別好的作用。 對於每一章的知識,先閱讀標題,弄懂大概講的是什麼主題,再去快速看一遍,不懂也沒有關係,但是一定要在不懂的

《Hadoop權威指南大資料的儲存與分析第版修訂版升級版》pdf附網盤下載連結+(附一個的java學習之路)

技術書閱讀方法論 一.速讀一遍(最好在1~2天內完成) 人的大腦記憶力有限,在一天內快速看完一本書會在大腦裡留下深刻印象,對於之後複習以及總結都會有特別好的作用。 對於每一章的知識,先閱讀標題,弄懂大概講的是什麼主題,再去快速看一遍,不懂也沒有關係,但是一定要在不懂的

《Netty權威指南(第2版)》pdf附網盤下載連結+(附一個的java學習之路)

技術書閱讀方法論 一.速讀一遍(最好在1~2天內完成) 人的大腦記憶力有限,在一天內快速看完一本書會在大腦裡留下深刻印象,對於之後複習以及總結都會有特別好的作用。 對於每一章的知識,先閱讀標題,弄懂大概講的是什麼主題,再去快速看一遍,不懂也沒有關係,但是一定要在不懂的

《深入理解計算機系統(原書第三版)》pdf附網盤下載連結+(附一個的java學習之路)

技術書閱讀方法論 一.速讀一遍(最好在1~2天內完成) 人的大腦記憶力有限,在一天內快速看完一本書會在大腦裡留下深刻印象,對於之後複習以及總結都會有特別好的作用。 對於每一章的知識,先閱讀標題,弄懂大概講的是什麼主題,再去快速看一遍,不懂也沒有關係,但是一定要在不懂的

《現代作業系統(第三版)中文版》pdf附網盤下載連結+(附一個的java學習之路)

技術書閱讀方法論 一.速讀一遍(最好在1~2天內完成) 人的大腦記憶力有限,在一天內快速看完一本書會在大腦裡留下深刻印象,對於之後複習以及總結都會有特別好的作用。 對於每一章的知識,先閱讀標題,弄懂大概講的是什麼主題,再去快速看一遍,不懂也沒有關係,但是一定要在不懂的

《ThinkinginJavathEdition(JAVA程式設計思想 第四版 英文版)》pdf附網盤下載連結+(附一個的java學習之路)

技術書閱讀方法論 一.速讀一遍(最好在1~2天內完成) 人的大腦記憶力有限,在一天內快速看完一本書會在大腦裡留下深刻印象,對於之後複習以及總結都會有特別好的作用。 對於每一章的知識,先閱讀標題,弄懂大概講的是什麼主題,再去快速看一遍,不懂也沒有關係,但是一定要在不懂的