b/s模式客戶端http請求過程與服務端http響應過程

b/s模式http請求過程
先建立tcp連接
瀏覽器數據經採集進行編碼,通過指定的http協議提交方法將編碼後的數據(瀏覽器自動將數據轉換成http消息)按照http消息的格式通過tcp連接提交到指定的服務器的應用程序上,瀏覽器和服務器雙方是通過http協議進行數據交互的,服務器接收到http請求消息,通過讀取http請求消息,進行數據索取,在用http響應消息傳遞給瀏覽器
(瀏覽器--http消息(作爲輸入/輸出)---服務器)==瀏覽器將客戶端數據自動封裝成http請求消息發送給服務器,服務器應用程序從http請求消息中獲取數據對數據進行解析,瀏覽器自動將服務器發送的數據包封裝成http響應消息發送給瀏覽器

hidden隱藏域(可以放在瀏覽器中,有一些數據不是用戶提交,但是必須提交給服務器的數據可以通過hidden提交,對於瀏覽器用戶來講,隱藏域是看不見的<input type="hidden" name=”id" value="9"/>)

http請求消息結構
請求起始行=http方法+請求目標+http版本(form中的method/form中的action)
http頭集=general headers()+request headers()+entity headers
正文body


http請求方法get/post
get/post的本質區別:get:將用戶的提交數據放到http請求消息的請求行中  post:將提交的數據放到http請求消息的包體中

因此get和post傳送數據大小纔會有不同限制,get是根據瀏覽器對url的長度限制從而限制get的發送的數據的大小,而post提交的數據是放在請求體中的,因此對數據的大小是無限制的
get:將用戶的提交數據放到http請求消息的請求行中
     瀏覽器發送一個空的http請求主體,請求服務器指定資源,
     使用get方法將採集數據添加到url中,就是將數據放置在http協議頭中,
     服務器從http請求消息的請求行中獲取用戶數據
post:將提交的數據放到http請求消息的包體中

       向瀏覽器提交數據
      服務器從http請求消息的體body中獲取用戶數據

                              get                         post

post請求

普通請求

上傳文件請求

get請求


     

      文件上傳流程php.ini

$_FILES【】:可以獲取上傳文件的相關信息

php.ini中規定了文件上傳的最大值,以及post方式提交數據的最大值


      web服務器端其他數據採集方法

$_REQUEST【】:即可以採集get方式提交的url查詢字符串中的信息,也可以採集form表單post方式提交的信息

$_SERVER【】:可以得到瀏覽器端和服務器端主機的一些相關信息

php的預定義變量是一維數組post get cookie---》request  server二維數組file

相對路徑方便項目的整體移植

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章