Tornado
tornado 是一個基於網絡開發的一個 WEB 框架,運用於高併發開發
Tornado 環境搭建
- 創建一個 python 項目、並設置新的虛擬環境
- 安裝 tornado 庫
pip install tornado
- 在項目的根下,新建一個
app.py
模塊作爲 tornado 啓動類 - 在
app.py
下 進行 tornado web開發
Tornado 中的響應方式
- self.write(content) : 返回 content 內容
- self.render(template_name, context) : 跳轉到模板中
- self.redirect(url) : 重定向到指定的請求中
Tornado 中的請求的操作
-
self.request
arguments : 獲取所有的參數
query_arguments : 獲取 get 參數
body_arguments : 獲取 post 參數method
path -
self 的方法:(快捷獲取參數的方式)
get_argument(key) : 獲取指定的 key 對應的 單值
get_arguments(key) : 獲取指定的 key 對應的 多值
Http: 是一個無狀態的協議
WebSocket : 是一個長鏈接技術
用Tornado實現 WebSocket 服務器的搭建
- 視圖類(接入點函數)繼承 tornado.websocket.WebSocketHandler
- 重寫父類中 open, on_message, on_close, check_origin 四個方法
- open 在 建立 websocket 鏈接的時候觸發的
- on_message 是 服務器接收到客戶端發送的信息的時候觸發的
- on_close 是服務器/客戶端斷開鏈接的時候觸發的
- check_origin : 如果使用的話,retrun true, 代表允許跨域訪問