您好,登錄后才能下訂單哦!
BS編程,即Browser、server開發。
Browser瀏覽器,一種特殊的客戶端,支持HTTP(s)協議,能夠通過URL向服務端發起請求,等待服務端返回HTML等數據,并在瀏覽器內可視化展示的程序。
Server,支持HTTP(s)協議,能夠接受眾多客戶端發起的HTTP協議請求,經過處理,將HTML等數據返回給瀏覽器。
本質上來說,BS是一種特殊的CS,即客戶端必須是一種支持HTTP協議且能解析并渲染HTML的軟件,服務端必須是能夠接收多客戶端HTTP訪問的服務器軟件。
BS開發分為2端開發
客戶端開發,或者稱為前端開發。HTML,CSS javascript等
服務器端開發,python有WSGI DJANGO Flask、 Tornado
請求方法Method
GET 請求獲取URL對應的資源
POST 提交數據至服務器端
HEAD 和GET類似,不過不返回消息正文
常見傳遞信息的方式
1、GET方法使用Query String
通過查詢字符串在URL中傳遞參數
2、POST方法提交數據
使用表單提交數據,文本框input的name屬性分別為age、weight、height
3、URL中本身就包含著信息
響應
響應消息行:協議版本 狀態碼 消息描述CRLF
狀態碼在響應頭第一行
1xx 提示信息,表示請求已被成功接收,繼續處理
2xx 表示正常響應
200 正常返回了網頁內容
3xx 重定向
301 頁面永久性移走,永久重定向。返回新的URL,瀏覽器會根據返回的url發起新的request請求
302 臨時重定向
304 資源未修改,瀏覽器使用本地緩存。
4xx 客戶端請求錯誤
404 Not Found,網頁找不到,客戶端請求的資源有錯
400 請求語法錯誤
401 請求要求身份驗證
403 服務器拒絕請求
5xx 服務器端錯誤
500 服務器內部錯誤
502 上游服務器錯誤,例如nginx反向代理的時候
無狀態,有連接和短連接
無狀態,指的是服務器無法知道2次請求之間的聯系,即使是前后2次同一個瀏覽器也沒有任何數據能夠判
斷出是同一個瀏覽器的請求。后來可以通過cookie、session來判斷。
有連接,是因為它基于TCP協議,是面向連接的,需要3次握手、4次斷開。
短連接,Http 1.1之前,都是一個請求一個連接,而Tcp的連接創建銷毀成本高,對服務器有很大的影響。所以,
自Http 1.1開始,支持keep-alive,默認也開啟,一個連接打開后,會保持一段時間(可設置),瀏覽器再訪問該
服務器就使用這個Tcp連接,減輕了服務器壓力,提高了效率。
推薦圖書《HTTP權威指南》
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。