get請求
朝別人要數據
post請求
向別人提交數據(例如:用戶登陸什麼的)
url: 統一資源定位符html
主要是使用socket編程,一開始也會受到瀏覽器發過來的數據一個請求頭,能夠從裏面拿到須要用到的數據,在傳輸的時候要按照固定的格式傳輸 conn.send(b'HTTP/1.1 200 OK\r\n\r\n消息')前端
import socket server = socket.socket() server.bind(('127.0.0.1', 8081)) server.listen(5) # 半鏈接池 # 接收瀏覽器數據 while 1: conn, addr = server.accept() data = conn.recv(1024) headers = data.decode('utf8').split(" ")[1] print(headers) conn.send(b'HTTP/1.1 200 OK\r\n\r\nhello') # 發送格式 """ # 瀏覽器發送過來的數據 - headers b'GET / HTTP/1.1\r\n - 請求首行 Host: 127.0.0.1:8081\r\n - 請求頭 Connection: keep-alive\r\n Cache-Control: max-age=0\r\n Upgrade-Insecure-Requests: 1\r\n User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36\r\n Sec-Fetch-Mode: navigate\r\n Sec-Fetch-User: ?1\r\n Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3\r\n Sec-Fetch-Site: none\r\nAccept-Encoding: gzip, deflate, br\r\n Accept-Language: zh-CN,zh;q=0.9\r\n \r\n' """
下面的文件就是一個簡易版的基於wsgiref模塊的webpython
其實這個就是一個根據不一樣的模塊拆分紅不一樣的py文件,拆分完以後,要想添加功能,只須要在urls和views兩個地方添加數據就能夠了web
import views func = { '/index': views.index, '/login': views.login, '/register': views.register }
def index(): return b'index' def login(): return b'login' def register(): return b'register'
from wsgiref.simple_server import make_server import urls def run(env, response): """ :param env: 請求相關的全部數據 :param response: 響應相關的全部數據 :return: """ response('200 OK', []) choice = env.get('PATH_INFO') print(choice) if choice in urls.func: res = urls.func.get(choice)() return [res] else: return [bytes(404)] if __name__ == '__main__': server = make_server('127.0.0.1', 8081, run) server.serve_forever()
數據是寫死的 萬年不變數據庫
數據是實時獲取的編程
eg:
1. 後端獲取當前時間展現到前端
2. 後端獲取數據庫中的數據展現到前端後端
疑問:瀏覽器
如何將後端獲取的數據 傳遞給html頁面服務器
==> 後端獲取的數據 傳遞給html頁面 >>>: 模版的渲染websocket
jinja2 模塊 - 解決如何將後端數據傳遞給前端展現的疑問
模版語法(極其貼近python後端語法)
<p>{{ user }}</p> <p>{{ user.name }}</p> <p>{{ user['pwd'] }}</p> <p>{{ user.get('hobby') }}</p> # 以上三種方式都是和python的取值方式一致