- Python Falcon 教程
- Python Falcon - 首頁
- Python Falcon - 簡介
- Python Falcon - 環境搭建
- Python Falcon - WSGI vs ASGI
- Python Falcon - Hello World(WSGI)
- Python Falcon - Waitress
- Python Falcon - ASGI
- Python Falcon - Uvicorn
- Python Falcon - API 測試工具
- 請求 & 響應
- Python Falcon - 資源類
- Python Falcon - 應用類
- Python Falcon - 路由
- Falcon - 字尾響應器
- Python Falcon - Inspect 模組
- Python Falcon - Jinja2 模板
- Python Falcon - Cookies
- Python Falcon - 狀態碼
- Python Falcon - 錯誤處理
- Python Falcon - Hook
- Python Falcon - 中介軟體
- Python Falcon - CORS
- Python Falcon - Websocket
- Python Falcon - Sqlalchemy 模型
- Python Falcon - 測試
- Python Falcon - 部署
- Python Falcon 有用資源
- Python Falcon - 快速指南
- Python Falcon - 有用資源
- Python Falcon - 討論
Python Falcon - Waitress
開發伺服器不建議在生產環境中使用。開發伺服器效率不高,不穩定也不安全。
Waitress 是一個生產級的純 Python WSGI 伺服器,效能非常好。它除了 Python 標準庫中的依賴項外沒有其他依賴項。它在 Unix 和 Windows 上的 CPython 上執行。
確保 Waitress 伺服器已安裝在工作環境中。該庫包含 serve 類,其物件負責處理傳入的請求。serve 類的建構函式需要三個引數。
serve (app, host, port)
falcon 應用物件是 app 引數。host 和 port 的預設值分別為 localhost 和 8080。listen 引數是一個字串,它是 **host:port** 的組合,預設為 '0.0.0.0:8080'
示例
在 **hellofalcon.py** 程式碼中,我們匯入 **serve** 類而不是 **simple_server** 並例項化其物件如下:
from waitress import serve
import falcon
class HelloResource:
def on_get(self, req, resp):
"""Handles GET requests"""
resp.status = falcon.HTTP_200
resp.content_type = falcon.MEDIA_TEXT
resp.text = (
'Hello World'
)
app = falcon.App()
hello = HelloResource()
app.add_route('/hello', hello)
if __name__ == '__main__':
serve(app, host='0.0.0.0', port=8000)
執行 **hellofalcon.py** 並像之前一樣在瀏覽器中訪問 **https://:8000/hellolink**。請注意,host 0.0.0.0 使 localhost 對公眾可見。
Waitress 伺服器也可以從命令列啟動,如下所示:
waitress-serve --port=8000 hellofalcon:app
廣告