Web基礎瞭解版04-XML-Tomcat-Http

XML

 

什麼是XML - Tomcat - Http

  • XML:eXtensible Markup Language (可擴展標記語言)。
  • XML 是一種標記語言,很相似 HTML。css

  • XML 的設計宗旨是傳輸數據,而非顯示數據。html

  • XML的使命,就是以一個統一的格式,組織有關係的數據。爲不一樣平臺下的應用程序服務,獨立於軟件和硬件的信息傳輸工具。java

  • XML 僅僅是純文本。有能力處理純文本的軟件均可以處理 XML。不過,可以讀懂 XML 的應用程序能夠有針對性地處理 XML 的標籤。web

XML相較於HTML,語法更加嚴格。apache

XML用途

  • 配置文件
  • 數據交換格式
  • 數據存儲

基本語法

文檔聲明

  • version屬性指定XML版本,固定值是1.0。windows

    • 必須在文件的第一行書寫文檔聲明。瀏覽器

  • encoding指定的字符集,是告訴解析器使用什麼字符集進行解碼,而編碼是由文本編輯器決定的tomcat

    • 一般的寫法:<?xml version="1.0" encoding="utf-8" ?>安全

    • 這樣就要求保存文件時,必須用utf-8編碼保存。此時要求XML文檔的做者確認當前編輯器保存文檔的編碼方式。服務器

語法規則

① XML聲明要麼不寫,要寫就寫在第一行,而且前面沒有任何其餘字符,而且必須嚴格遵循語法

② 只能有一個根標籤,全部的其餘標籤都必須聲明在根標籤內部

③ 標籤必須正確結束,不能交叉嵌套

⑤ 嚴格區分大小寫

⑥ 開始標籤中,能夠自定義添加屬性。但,若是有屬性就必須有值,且必須加引號

⑦ 標籤不能以數字開頭

⑧ 註釋不能嵌套, 註釋採用:<!--註釋-->

⑨ XML中可使用HTML中的轉義字符

XML實體中不容許出現"&","<",">"等特殊字符,不然XML語法檢查時將出錯,請使用轉義字符

CDATA區

  • 當XML文檔中須要寫一些程序代碼、SQL語句或其餘不但願XML解析器進行解析的內容時,就能夠寫在CDATA區中

  • XML解析器會將CDATA區中的內容原封不動的輸出

  • CDATA區的定義格式:<![CDATA[…]]>

處理指令

① 處理指令,簡稱PI (processing instruction)。處理指令用來指揮解析引擎如何解析XML文檔內容。

② 處理指令必須以 <? 做爲開頭,以 ?> 做爲結尾,XML聲明語句就是最多見的一種處理指令。

例如,在XML文檔中可使用xml-stylesheet指令,通知XML解析引擎,應用xsl文件顯示xml文檔內容。

<?xml-stylesheet type="text/css" href="p.xsl"?>

③ XSL對於XML來講就至關於CSS對HTML同樣,XSL是XML的文件樣式。

XSL 指擴展樣式表語言(EXtensible Stylesheet Language)。

XML解析

  • XML解析是指經過解析器讀取XML文檔,解釋語法,並將文檔轉化成對象

  • 對XML的一切操做都是由解析開始的,因此解析很是重要。

dom4j

  • dom4j是一個簡單、靈活的開放源代碼的庫。

  • Dom4j是由早期開發JDOM的人分離出來然後獨立開發的。與JDOM不一樣的是,dom4j使用接口和抽象基類,雖然Dom4j的API相對要複雜一些,但它提供了比JDOM更好的靈活性。

  • dom4j是一個很是優秀的Java XML API,具備性能優異、功能強大和極易使用的特色。如今不少軟件都採用dom4j,例如Hibernate。

  • 使用dom4j開發,需導入dom4j相應的jar包dom4j-1.6.1.jar。因此使用第一步:導包!

  • Dom4j解析步驟

//一、建立解析器對象
SAXReader reader = new SAXReader();
//二、使用解析器將xml文件轉換爲內存中的document對象
Document document = reader.read("teachers.xml"); //相對在項目根路徑下查找xml文件
//三、經過文檔對象能夠獲取文檔的根標籤
Element rootElement = document.getRootElement();
//四、根據根標籤獲取全部的根標籤的子標籤集合
List<Element> elements = rootElement.elements();
//五、遍歷集合中的標籤,並將全部的數據解析出來
for (Element element : elements) {
    //每次遍歷就表明一個teacher信息
    System.out.println("正在遍歷的標籤名:"+element.getName());
    System.out.println("正在遍歷標籤的id屬性值:"+element.attributeValue("id"));
    //獲取teacher的子標籤的內容
    String tname = element.elementText("tname");
    System.out.println("tname:"+tname);
    String age = element.elementText("tage");
    System.out.println("tage:"+age);
}

修改

//添加一個新的student節點
Element newEle = rootElement.addElement("teacher");
//建立一個良好的xml格式
OutputFormat format = OutputFormat.createPrettyPrint();
//寫入文件
XMLWriter xmlWriter = new XMLWriter(new FileWriter("teachers.xml"),format);
xmlWriter.write(document);
xmlWriter.close();

新建

//1.建立文檔
Document document = DocumentHelper.createDocument();
//2.添加根元素
Element root = document.addElement("teachers");
//3.添加元素節點
Element tcEle = root.addElement("teacher");
Element tcEle2 = root.addElement("teacher");

XPath

  • XPath 是在 XML 文檔中查找信息的語言,相似於jQuery選擇器。

  • XPath經過元素和屬性進行查找,簡化了Dom4j查找節點的過程

語法 說明
/AAA 選擇根元素AAA
/AAA/CCC 選擇AAA下的全部CCC子元素
/AAA/DDD/BBB 選擇AAA的子元素DDD的全部BBB子元素
//BBB 選擇全部BBB元素
//DDD/BBB 選擇全部父元素是DDD的BBB元素
/AAA/CCC/DDD/* 選擇全部路徑依附於/AAA/CCC/DDD的元素
/*/*/*/BBB 選擇全部的有3個祖先元素的BBB元素
//* 選擇全部元素
/AAA/BBB[1] 選擇AAA的第一個BBB子元素
/AAA/BBB[last()] 選擇AAA的最後一個BBB子元素
//@id 選擇全部元素的id屬性
//BBB[@id] 選擇有id屬性的BBB元素
//BBB[@name] 選擇有name屬性的BBB元素
//BBB[@*] 選擇有任意屬性的BBB元素
//BBB[not(@*)] 選擇沒有屬性的BBB元素
//BBB[@id='b1'] 選擇含有屬性id且其值爲'b1'的BBB元素
//BBB[@name='bbb'] 選擇含有屬性name且其值爲'bbb'的BBB元素

使用

① 導包:jaxen-1.1-beta-6.jar

② dom4j怎麼作就怎麼作。只是在查找元素的時候可使用xpath了

③ 獲取全部符合條件的節點

  • document.selectNodes(String xpathExpression) :返回List集合

    • 舉例:document.selectNodes("/students/student")

  • document.selectSingleNode(String xpathExpression) :獲取符合條件的單個節點。即一個Node對象。若是符合條件的節點有多個,那麼返回第一個。

    • 舉例:document.selectSingleNode("/students/student[@id='1']")

Tomcat

Tomcat下載

  • Tomcat官方網站:http://tomcat.apache.org/

  • 安裝版:須要安裝,通常不考慮使用。

  • 解壓版: 直接解壓縮使用,咱們使用的版本。

  • 由於tomcat服務器軟件須要使用java環境,因此須要正確配置JAVA_HOME。

安裝

解壓apache-tomcat-7.0.79-windows-x64.zip到非中文無空格目錄中

  • bin:該目錄下存放的是二進制可執行文件,若是是安裝版,那麼這個目錄下會有兩個exe文件:tomcat6.exe、tomcat6w.exe,前者是在控制檯下啓動Tomcat,後者是彈出GUI窗口啓動Tomcat;若是是解壓版,那麼會有startup.bat和shutdown.bat文件,startup.bat用來啓動Tomcat,但須要先配置JAVA_HOME環境變量才能啓動,shutdawn.bat用來中止Tomcat;

  • conf:這是一個很是很是重要的目錄,這個目錄下有四個最爲重要的文件:

    • server.xml:配置整個服務器信息。例如修改端口號。默認HTTP請求的端口號是:8080

    • tomcat-users.xml:存儲tomcat用戶的文件,這裏保存的是tomcat的用戶名及密碼,以及用戶的角色信息。能夠按着該文件中的註釋信息添加tomcat用戶,而後就能夠在Tomcat主頁中進入Tomcat Manager頁面了;

    • web.xml:部署描述符文件,這個文件中註冊了不少MIME類型,即文檔類型。這些MIME類型是客戶端與服務器之間說明文檔類型的,如用戶請求一個html網頁,那麼服務器還會告訴客戶端瀏覽器響應的文檔是text/html類型的,這就是一個MIME類型。客戶端瀏覽器經過這個MIME類型就知道如何處理它了。固然是在瀏覽器中顯示這個html文件了。但若是服務器響應的是一個exe文件,那麼瀏覽器就不可能顯示它,而是應該彈出下載窗口才對。MIME就是用來講明文檔的內容是什麼類型的!

    • context.xml:對全部應用的統一配置,一般咱們不會去配置它。

  • lib:Tomcat的類庫,裏面是一大堆jar文件。

  • logs:這個目錄中都是日誌文件,記錄了Tomcat啓動和關閉的信息,若是啓動Tomcat時有錯誤,那麼異常也會記錄在日誌文件中。

  • temp:存放Tomcat的臨時文件,這個目錄下的東西能夠在中止Tomcat後刪除!

  • webapps:存放web項目的目錄,其中每一個文件夾都是一個項目;若是這個目錄下已經存在了目錄,那麼都是tomcat自帶的項目。其中ROOT是一個特殊的默認項目

  • work:運行時生成的文件,最終運行的文件都在這裏。經過webapps中的項目生成的,能夠把這個目錄下的內容刪除,再次運行時會生再次生成work目錄。當客戶端用戶訪問一個JSP文件時,Tomcat會經過JSP生成Java文件,而後再編譯Java文件生成class文件,生成的java和class文件都會存放到這個目錄下。

  • LICENSE:許可證。

  • NOTICE:說明文件。

啓動

在命令行中運行catalina run或者 Tomcat解壓目錄下雙擊startup.bat 啓動Tomcat服務器,在瀏覽器地址欄訪問地址進行測試http://localhost:8080

若是啓動失敗,查看以下的狀況:

狀況一:若是雙擊startup.bat後窗口一閃而過,請查看JAVA_HOME是否配置正確。

startup.bat會調用catalina.bat,而catalina.bat會調用setclasspath.bat,setclasspath.bat會使用JAVA_HOME環境變量,因此咱們必須在啓動Tomcat以前把JAVA_HOME配置正確。

狀況二:若是啓動失敗,提示端口號被佔用,則將默認的8080端口修改成其餘未使用的值,例如8989等。

 打開:解壓目錄\conf\server.xml,找到第一個Connector標籤,修改port屬性

web服務器在啓動時,其實是監聽了本機上的一個端口,當有客戶端向該端口發送請求時,web服務器就會處理請求。可是若是不是向其所監聽的端口發送請求,web服務器不會作任何響應。例如:Tomcat啓動監聽了8989端口,而訪問的地址是http://localhost:8080,將不能正常訪問。

在Eclipse中建立Tomcat鏡像

① 在Servers視窗裏點擊超連接或在空白處右鍵→New

②選擇對應的安裝版本,點next

注意1:關聯Tomcat鏡像時,Eclipse會從本地Tomcat中複製信息及文件(以下圖),以後兩者的配置信息就沒有關係了,其中任何一個的配置信息發生變化都不會自動同步到另一個。因此,若是修改端口號的話,須要Tomcat目錄中和Eclipse的鏡像文件中都要修改端口號才能夠。

注意2:Tomcat服務器在Eclipse中啓動之後,在瀏覽器中訪問:http://localhost:8080會發現訪問失敗。由於此時在Eclipse中啓動的webapps目錄與以前方式訪問使用的webapps目錄不一致。

動態Web工程部署

項目目錄結構說明

  • src:存放Java源代碼的目錄。

  • Libraries:存放的是Tomcat及JRE中的jar包。

  • build:自動編譯.java文件的目錄。

  • WebContent:存放的是須要部署到服務器的文件

    • META-INF:是存放工程自身相關的一些信息,元文件信息,一般由開發工具和環境自動生成。

      • MANIFEST.MF:配置清單文件

    • WEB-INF:這個目錄下的文件,是不能被客戶端直接訪問的。

      • lib:用於存放該工程用到的庫。粘貼過來之後,再也不須要build path

      • web.xml:web工程的配置文件,完成用戶請求的邏輯名稱到真正的servlet類的映射。

      • classes:存放Java字節碼文件的目錄。

    凡是客戶端能訪問的資源(*.html或 *.jpg)必須跟WEB-INF在同一目錄,即放在Web根目錄下的資源,從客戶端是能夠經過URL地址直接訪問的。

部署/移除Web項目

右鍵點擊剛建立好的Tomcat服務器,選擇Add and Remove …

將左邊的項目 add 到右邊,即爲部署:

將右邊的項目remove到左邊,即爲移除:

部署或移除web項目之後,須要重啓服務器

部署Web項目的原理

  • 當咱們使用Eclipse將項目部署到Tomcat中時,咱們發現,在Tomcat下的webapps目錄下並無咱們建立好的項目,可是當經過Eclipse啓動服務器後,項目卻真的能夠訪問到,這是爲何呢?

  • 實際上,Eclipse在使用Tomcat時,並無將項目部署到Tomcat的目錄下,而是在其工做空間中,建立了一個Tomcat的鏡像,Eclipse啓動的Tomcat是他本身配置的鏡像。

  • Eclipse鏡像所在目錄:你的工做空間目錄.metadata.plugins\org.eclipse.wst.server.core\tmp0

    (重啓Tomcat之後,雙擊Servers-TOmcat v7.0即會看到部署好的web工程存在的默認位置。)

或者經過以下的方式,也能夠直接找到部署的位置:

  • 在這個目錄下,咱們會發現一個和Tomcat安裝目錄幾乎如出一轍的目錄結構。

  • 在這裏Eclipse中Tomcat鏡像配置文件也是獨立的,而咱們所建立的項目是部署到wtpwebapps目錄下的,這樣作的好處是Eclipse中Tomcat和咱們本機的Tomcat能夠保持相互獨立,不會影響彼此。可是千萬注意,此時千萬不要試圖刪除原有的Tomcat目錄結構或移動位置。

總結:啓動服務器之後,咱們的web項目會部署到服務器目錄的wtpwebapps文件夾的目錄下。index.jsp也是直接聲明在此項目目錄下的。

HTTP

  •  HTTP 超文本傳輸協議 (HTTP-Hypertext transfer protocol),是一個屬於應用層的面向對象的協議,因爲其簡捷、快速的方式,適用於分佈式超媒體信息系統。它是一種詳細規定了瀏覽器和萬維網服務器之間互相通訊的規則,經過因特網傳送萬維網文檔的數據傳送協議。
  • 客戶端與服務端通訊時傳輸的內容咱們稱之爲報文HTTP協議就是規定報文的格式。

  • HTTP就是一個通訊規則,這個規則規定了客戶端發送給服務器的報文格式,也規定了服務器發送給客戶端的報文格式。實際咱們要學習的就是這兩種報文。客戶端發送給服務器的稱爲」請求報文「,服務器發送給客戶端的稱爲」響應報文「。

 瀏覽器與服務器之間的通訊過程要經歷四個步驟

 

  • 瀏覽器與WEB服務器的鏈接過程是短暫的,每次鏈接只處理一個請求和響應。對每個頁面的訪問,瀏覽器與WEB服務器都要創建一次單獨的鏈接。

  • 瀏覽器到WEB服務器之間的全部通信都是徹底獨立分開的請求和響應對。

報文

  • 請求報文:瀏覽器發給服務器

  • 響應報文:服務器發回給瀏覽器

 

請求報文

GET請求

 一、因爲請求參數在請求首行中已經攜帶了,因此沒有請求體,也沒有請求空行

二、請求參數拼接在url地址中,地址欄可見[url?name1=value1&name2=value2],不安全

三、因爲參數在地址欄中攜帶,因此有大小限制[地址欄數據大小通常限制爲4k],只能攜帶純文本

四、get請求參數只能上傳文本數據

五、沒有請求體。因此封裝和解析都快,效率高, 瀏覽器默認提交的請求都是get請求[好比:① 地址欄輸入url地址回車,②點擊超連接a , ③ form表單默認方式...]

請求頭

Host: localhost:8080   主機虛擬地址
Connection: keep-alive 長鏈接
Upgrade-Insecure-Requests: 1  請求協議的自動升級[http的請求,服務器倒是https的,瀏覽器自動會將請求協議升級爲https的]
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.75 Safari/537.36
- 用戶系統信息
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
- 瀏覽器支持的文件類型
Referer: http://localhost:8080/05_web_tomcat/login.html
- 當前頁面的上一個頁面的路徑[當前頁面經過哪一個頁面跳轉過來的]:   能夠經過此路徑跳轉回上一個頁面, 廣告計費,防止盜鏈
Accept-Encoding: gzip, deflate, br
- 瀏覽器支持的壓縮格式
Accept-Language: zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7
- 瀏覽器支持的語言

POST請求

 POST請求要求將form標籤的method的屬性設置爲post

一、POST請求有請求體,而GET請求沒有請求體。

二、post請求數據在請求體中攜帶,請求體數據大小沒有限制,能夠用來上傳全部內容[文件、文本]

三、只能使用post請求上傳文件

四、post請求報文多了和請求體相關的配置[請求頭]

五、地址欄參數不可見,相對安全

六、post效率比get低

響應報文

報文格式(4部分)

  • 響應首行(響應行);

  • 響應頭信息(響應頭);

  • 空行;

  • 響應體;

響應碼

  • 200:請求成功,瀏覽器會把響應體內容(一般是html)顯示在瀏覽器中;

  • 404:請求的資源沒有找到,說明客戶端錯誤的請求了不存在的資源;

  •  500:請求資源找到了,但服務器內部出現了錯誤;
  • 302:重定向,當響應碼爲302時,表示服務器要求瀏覽器從新再發一個請求,服務器會發送一個響應頭Location,它指定了新請求的URL地址;
  • 304 (未修改) 自從上次請求後,請求的網頁未修改過。服務器返回此響應時,不會返回網頁內容。 
  • 405 (方法禁用) 禁用請求中指定的方法。

MIME類型

HTTP內容類型:當前響應體的數據類型。

① 須要指出的是在瀏覽器和服務器之間傳輸的數據類型並不是都是文本類型,還包括圖片、視頻、音頻等多媒體類型。這些多媒體類型是使用MIME類型定義的。

② MIME的英文全稱是"Multipurpose Internet Mail Extensions" 多功能Internet 郵件擴充服務。MIME類型的格式是「大類型/小類型」,並與某一種文件的擴展名相對應。

文件 MIME類型
超文本標記語言文本 .html,.htm text/html
普通文本 .txt text/plain
RTF文本 .rtf application/rtf
GIF圖形 .gif image/gif
JPEG圖形 .jpeg,.jpg image/jpeg
au聲音文件 .au audio/basic
MIDI音樂文件 mid,.midi audio/midi,audio/x-midi
RealAudio音樂文件 .ra, .ram audio/x-pn-realaudio
MPEG文件 .mpg,.mpeg video/mpeg
AVI文件 .avi video/x-msvideo
GZIP文件 .gz application/x-gzip
TAR文件 .tar application/x-tar
1xx(臨時響應) 
表示臨時響應並須要請求者繼續執行操做的狀態代碼。

代碼 說明 
100 (繼續) 請求者應當繼續提出請求。服務器返回此代碼表示已收到請求的第一部分,正在等待其他部分。 
101 (切換協議) 請求者已要求服務器切換協議,服務器已確認並準備切換。

2xx (成功) 
表示成功處理了請求的狀態代碼。

代碼 說明 
200 (成功) 服務器已成功處理了請求。一般,這表示服務器提供了請求的網頁。 
201 (已建立) 請求成功而且服務器建立了新的資源。 
202 (已接受) 服務器已接受請求,但還沒有處理。 
203 (非受權信息) 服務器已成功處理了請求,但返回的信息可能來自另外一來源。 
204 (無內容) 服務器成功處理了請求,但沒有返回任何內容。 
205 (重置內容) 服務器成功處理了請求,但沒有返回任何內容。 
206 (部份內容) 服務器成功處理了部分 GET 請求。

3xx (重定向) 
表示要完成請求,須要進一步操做。 一般,這些狀態代碼用來重定向。

代碼 說明 
300 (多種選擇) 針對請求,服務器可執行多種操做。服務器可根據請求者 (user agent) 選擇一項操做,或提供操做列表供請求者選擇。 
301 (永久移動) 請求的網頁已永久移動到新位置。服務器返回此響應(對 GET 或 HEAD 請求的響應)時,會自動將請求者轉到新位置。 
302 (臨時移動) 服務器目前從不一樣位置的網頁響應請求,但請求者應繼續使用原有位置來進行之後的請求。 
303 (查看其餘位置) 請求者應當對不一樣的位置使用單獨的 GET 請求來檢索響應時,服務器返回此代碼。 
304 (未修改) 自從上次請求後,請求的網頁未修改過。服務器返回此響應時,不會返回網頁內容。 
305 (使用代理) 請求者只能使用代理訪問請求的網頁。若是服務器返回此響應,還表示請求者應使用代理。 
307 (臨時重定向) 服務器目前從不一樣位置的網頁響應請求,但請求者應繼續使用原有位置來進行之後的請求。

4xx(請求錯誤) 
這些狀態代碼表示請求可能出錯,妨礙了服務器的處理。

代碼 說明 
400 (錯誤請求) 服務器不理解請求的語法。 
401 (未受權) 請求要求身份驗證。 對於須要登陸的網頁,服務器可能返回此響應。 
403 (禁止) 服務器拒絕請求。 
404 (未找到) 服務器找不到請求的網頁。 
405 (方法禁用) 禁用請求中指定的方法。 
406 (不接受) 沒法使用請求的內容特性響應請求的網頁。 
407 (須要代理受權) 此狀態代碼與 401(未受權)相似,但指定請求者應當受權使用代理。 
408 (請求超時) 服務器等候請求時發生超時。 
409 (衝突) 服務器在完成請求時發生衝突。服務器必須在響應中包含有關衝突的信息。 
410 (已刪除) 若是請求的資源已永久刪除,服務器就會返回此響應。 
411 (須要有效長度) 服務器不接受不含有效內容長度標頭字段的請求。 
412 (未知足前提條件) 服務器未知足請求者在請求中設置的其中一個前提條件。 
413 (請求實體過大) 服務器沒法處理請求,由於請求實體過大,超出服務器的處理能力。 
414 (請求的 URI 過長) 請求的 URI(一般爲網址)過長,服務器沒法處理。 
415 (不支持的媒體類型) 請求的格式不受請求頁面的支持。 
416 (請求範圍不符合要求) 若是頁面沒法提供請求的範圍,則服務器會返回此狀態代碼。 
417 (未知足指望值) 服務器未知足」指望」請求標頭字段的要求。

5xx(服務器錯誤) 
這些狀態代碼表示服務器在嘗試處理請求時發生內部錯誤。 這些錯誤多是服務器自己的錯誤,而不是請求出錯。

代碼 說明 
500 (服務器內部錯誤) 服務器遇到錯誤,沒法完成請求。 
501 (還沒有實施) 服務器不具有完成請求的功能。例如,服務器沒法識別請求方法時可能會返回此代碼。 
502 (錯誤網關) 服務器做爲網關或代理,從上游服務器收到無效響應。 
503 (服務不可用) 服務器目前沒法使用(因爲超載或停機維護)。一般,這只是暫時狀態。 
504 (網關超時) 服務器做爲網關或代理,可是沒有及時從上游服務器收到請求。 
505 (HTTP 版本不受支持) 服務器不支持請求中所用的 HTTP 協議版本。

HttpWatch狀態碼Result is

200 - 服務器成功返回網頁,客戶端請求已成功。 
302 - 對象臨時移動。服務器目前從不一樣位置的網頁響應請求,但請求者應繼續使用原有位置來進行之後的請求。 
304 - 屬於重定向。自上次請求後,請求的網頁未修改過。服務器返回此響應時,不會返回網頁內容。 
401 - 未受權。請求要求身份驗證。 對於須要登陸的網頁,服務器可能返回此響應。 
404 - 未找到。服務器找不到請求的網頁。 
2xx - 成功。表示服務器成功地接受了客戶端請求。 
3xx - 重定向。表示要完成請求,須要進一步操做。客戶端瀏覽器必須採起更多操做來實現請求。例如,瀏覽器可能不得不請求服務器上的不一樣的頁面,或經過代理服務器重複該請求。 
4xx - 請求錯誤。這些狀態代碼表示請求可能出錯,妨礙了服務器的處理。 
5xx - 服務器錯誤。表示服務器在嘗試處理請求時發生內部錯誤。 這些錯誤多是服務器自己的錯誤,而不是請求出錯。
相關文章
相關標籤/搜索