1. 程式人生 > 其它 >01.前端必備知識

01.前端必備知識

前端必備知識

1. web本質

import socket

sk = socket.socket()

sk.bind(("127.0.0.1", 8080))
sk.listen(5)

while True:
    conn, addr = sk.accept()
    data = conn.recv(8096)
    # 這是服務端響應的格式,如果沒有則開啟瀏覽器得不到響應資訊
    conn.send(b"HTTP/1.1 200 OK\r\n\r\n")
    conn.send(b"<h1>Hello world!</h1>")
    conn.close()

本質:瀏覽器發請求 --> HTTP協議 --> 服務端接收請求 --> 服務端返回響應 --> 服務端把HTML檔案內容發給瀏覽器 --> 瀏覽器渲染頁面

2. http協議

show code
"""
HTTP協議的由來(sql語句由來)
	瀏覽器只有一個如何相容N多個服務端
"""
# 四大特性
  1 基於請求響應
  2 基於TCP/IP作用於應用層之上的協議
  3 無狀態
  	無論來多少次 都待你如初見
   	如何做到儲存使用者狀態???
    	cookie、session、token
  4 無/短連結
  	請求來我響應你 之後就沒有聯絡了
    長連結:websocket(群聊功能、服務端主動給客戶端傳送訊息)

# 請求資料格式
  請求首行(HTTP協議的版本,當前請求方式)
  請求頭(一大堆k,v鍵值對)
  
  請求體(並不是所有的請求方式都有請求體,get沒有post有)
  
# 響應資料格式
  響應首行(HTTP協議的版本,響應狀態碼)
  響應頭(一大堆k,v鍵值對)
  
  響應體(瀏覽器展示給使用者看的內容)
 
# URL
  統一資源定位符 類似於座標
# 請求方式
  1.get請求
  	朝別人要資料(也是可以攜帶引數的,只不過引數不是放在請求體裡面的,而是直接放在url的後面)
  	url?username=jason&password=123
  2.post請求
  	朝別人提交資料

# 響應狀態碼
"""用簡短的數字來表示一大串提示性資訊"""
1XX:服務端已經成功接收到了你的資料 正在處理你可以繼續提交
2XX:請求成功(200 OK)
3XX:重定向(你想訪問A頁面但是給你調到了B頁面)
4XX:請求錯誤(404請求資源不存在、403請求不符合條件)
5XX:服務端內部錯誤(500)
ps:上述的狀態碼是HTTP協議規定的,其實到了公司之後每個公司還會自己定製自己的狀態及提示資訊
  	公司A
    	1000:
      1001:
      1002:
    公司B
    	2001:
      2002:
      2003:
      ...
再堅持一下下,會越來越優秀