Web介紹


什么是Web

  web(World Wide Web)即全球廣域網,也稱為萬維網,它是一種基於超文本和HTTP的、全球性的、動態交互的、跨平台的分布式圖形信息系統。是建立在Internet上的一種網絡服務,為瀏覽者在Internet上查找和瀏覽信息提供了圖形化的、易於訪問的直觀界面,其中的文檔及超級鏈接將Internet上的信息節點組織成一個互為關聯的網狀結構

web技術的依賴

  Web技術目前依賴HTTP協議(應用層協議)及網絡。

服務器分類:

  服務器分為硬件服務器和軟件服務器。

  硬件服務器:就是一台電腦.

  軟件服務器: 為軟件提供服務的程序.軟件服務器依托硬件服務器.開發的程序又由軟件服務器提供服務器.

軟件服務器:

  tomcat

  jetty

  jboss

  weblogic

Tomcat服務器

tomcat目錄

image

核心jar包

annotations-api.jar   注解相關jar包
el-api.jar			  el表達式相關jar包
jasper-el.jar		  jsp與el表達式相關jar包
jasper.jar			  jsp 相關jar包
jaspic-api.jar		  jsp 相關jar包		
jsp-api.jar			  jsp 相關jar包
servlet-api.jar		  servlet相關jar包
websocket-api.jar	 webSocket 相關jar包 (tomcat 7 之后新加入)

HTTP

HTTP簡介

  WEB 瀏覽器與 WEB 服務器之間的一問一答的交互過程必須遵循一定的規則,這個規則就是 HTTP 協議。

  HTTP 是 HyperText Transfer Protocol(超文本傳輸協議)的簡寫,它是 TCP/IP 的一個應用層協議,用於定義 WEB 瀏覽器與 WEB 服務器之間交換數據的過程及數據本身的格式。HTTP 協議是 WEB 開發的基礎。
HTTP 協議版本:HTTP/1.0 和 HTTP/1.1。

區別:
  HTTP/1.0:瀏覽器的每次請求都需要與服務器建立一個 TCP 連接,服務器處理請求
結束后立即斷開連接
  HTTP/1.1:支持持久連接,在同一個 tcp 連接中可以傳送多個 HTTP 請求和響應。

HTTP協議特點

  1、HTTP 協議是基於請求/響應模型的協議,請求和響應必須成對,先有請求后有響應。
  2、HTTP 協議默認的端口是 80。例如:http://www.bjsxt.com:80
  3、簡單快速:當客戶端向服務器端發送請求時,只是簡單的填寫請求路徑和請求方法即可,然后就可以通過瀏覽器或其他方式將該請求發送就行了。比較常用的請求方法有三種,分別是:GET、POST。不同的請求方法使得客戶端和服務器端聯系的方式各不相同。因為HTTP 協議比較簡單,所以 HTTP 服務器的程序規模相對比較小,從而使得通信的速度非常快。
  4、靈活:Http 協議允許客戶端和服務器端傳輸任意類型的數據對象。這些不同的類型由Content-Type 標記。
  5、無狀態:HTTP 協議是無狀態協議。無狀態是指協議對於事務處理沒有記憶能力。缺少狀態意味着如果后續處理需要前面的信息,則它必須重傳,服務器不知道客戶端是什么狀態。
  6、明文傳輸,不安全。

GET 與 POST 方法

  1、請求方法 GET 與 POST 的區別
  2、Get 方式將請求參數追加在 URL 后面,通過URL 提交數據,數據在 URL 中可以看到;POST 方式,數據放置在Form 內提交。
  3、GET 方式提交的數據最多只能有 1024 字節,而POST 則沒有此限制。
  4、安全性問題。正如在(2)中提到,使用 Get 的時候,參數會顯示在地址欄上,而 Post 不會。所以,如果這些數據不是中文數據而且是非敏感數據,那么使用 get;反之如果是中文數據而且包含敏感數據,那么還是使用 post 為好。
  5、如何區分GET 請求和 POST 請求

    只有表單設置為 method=”post”才是 POST 請求,其它的都是 get 請求。常見的 GET請求有:地址欄直接訪問、超鏈接請求<img src="" />等

    當從服務器獲取數據時,使用GET請求,提交數據給服務器時使用POST請求,刪除數據時使用DELETE請求,修改數據時使用PUT請求.

HTTP 請求消息

1、HTTP 請求構成

  Http 協議由 Http 請求和 Http 響應組成。客戶端連上服務器后,向服務器請求某個 web 資源的請求,稱之為客戶端向服務器發送了一個 HTTP 請求。一個完整的 HTTP 請求包括:請求行、請求頭、請求體(請求正文)

  請求行:位於請求消息的第一行,格式:請求方式 資源路徑 HTTP 版本號
  請求頭:客戶端發送給服務器的一些基本信息,使用鍵值對 key:value 表示。從第二行開始到 Request Headers 結束
  請求體:當請求方式是 post 時,請求體中有請求的參數,每一項數據都用 key=value 表示,例如:username=zhangsan&userpwd=123456.

  如果請求方式為 get,那么請求參數不會出現在請求體中,會拼接在 url 地址后面,如:http://localhost:8080...?username=zhangsan&userpwd=123

2、查看 HTTP 請求

3、HTTP 請求頭參數說明

參數名 描述
Referer 瀏覽器通知服務器,當前請求來自何處。如果是直接訪問,則不會有這個頭。
Cookie 與會話有關技術,用於存放瀏覽器緩存的 cookie 信息。
User-Agent 瀏覽器通知服務器,客戶端瀏覽器與操作系統相關信息
Connection 保持連接狀態。Keep-Alive連接中,close 已關閉
Host 請求的服務器主機名
Content-Length 請求體的長度
Content-Type 如果是 POST 請求,會有這個頭,默認值為 application/x-www-formurlencoded.
表示請求體內容使用 url 編碼
Accept 瀏覽器可支持的 MIME 類型,它是文件類型的一種描述格式。
MIME 格式:大類型/小類型[;參數],例如:
text/html ,html 文件
text/css,css 文件
text/javascript,js 文件
Accept- Encoding        瀏覽器通知服務器,它支持的數據壓縮格式。如:GZIP 壓縮
Accept-Language  瀏覽器通知服務器它的語言環境

HTTP 響應消息

1、HTTP 響應構成

  一個完整的 HTTP 響應包括:響應行、響應頭、響應體

  響應行:位於響應消息的第一行,格式:HTTP 版本號 狀態碼 狀態描述信息

    例如:HTTP/1.1 200 OK

  響應頭:服務器返回給客戶端的信息,使用鍵值對 key:value 表示。從第二行開始到 Response Headers 結束.

  響應體:響應體是服務器回寫給瀏覽器的頁面正文,瀏覽器將正文加載到內存,然后解析渲染,顯示頁面內容常用狀態碼:

    200(正常)表示一切正常,返回的是正常請求結果
    302/307(臨時重定向)指出被請求的文檔已被臨時移動到別處,此文檔的新的URL 在 Location 相應頭中給出.
    304(未修改)表示請求的資源沒有改變,客戶機可以直接訪問本地緩存的資源,無需到服務器請求。
    404(找不到)服務器上不存在客戶機所請求的資源。
    500(服務器內部錯誤)服務器端的程序發生錯誤。

4、查看 HTTP 響應

  使用 POST 方式提交一個表單(用戶名,密碼),得到的HTTP 響應。

5、HTTP 響應頭參數說明

常見響應頭 描述
Location 服務器通過這個頭,來告訴瀏覽器跳轉到哪里。
Content-Type 響應正文的類型(MIME 類型)
取值如:text/html;charset=UTF-8
Content-Disposition 通知瀏覽器以下載方式解析正文
取值如:attachment;filename=xx.zip
Set-Cookie 與會話相關技術。服務器向瀏覽器寫入 cookie
Content-Encoding 服務器通過這個頭,告訴瀏覽器,數據的壓縮格式
取值如:gzip
Content-length 響應正文的長度
Refresh 定時刷新,格式:秒數;url=路徑
取值如:3;url=www.bjsxt.com //3 秒刷新頁面到 www.bjsxt.com


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM