sanic
Version 24.6.0
Sanic 是一個Python 3.8+ Web 伺服器和 Web 框架,旨在快速運行。它允許使用 Python 3.5 中添加的async/await
語法,這使您的程式碼非阻塞且快速。
Sanic 也符合 ASGI 標準,因此您可以使用替代的 ASGI Web 伺服器來部署它。
GitHub 上的原始碼 |幫助和討論區|使用者指南 |在 Discord 上聊天
該項目由社區維護,為社區服務。歡迎貢獻!
該專案的目標是提供一種簡單的方法來啟動和運行易於建置、擴展並最終擴展的高效能 HTTP 伺服器。
請查看 open Collective,以了解有關幫助資助 Sanic 的更多資訊。
pip3 install sanic
Sanic 利用
uvloop
和ujson
來幫助提高性能。如果您不想使用這些軟體包,只需在安裝時新增環境變數SANIC_NO_UVLOOP=true
或SANIC_NO_UJSON=true
即可。$ 匯出 SANIC_NO_UVLOOP=true $ 匯出 SANIC_NO_UJSON=true $ pip3 install --no-binary :all: sanic
筆記
如果您正在全新安裝的 Fedora 28 或更高版本上運行,請確保您安裝了redhat-rpm-config
軟體包,以防您想使用具有ujson
依賴項的sanic
。
from sanic import Sanicfrom sanic.response import jsonapp = Sanic("my-hello-world-app")@app.route('/')async def test(request):return json({'hello': 'world'} )if __name__ == '__main__':app.run()
Sanic 現在可以使用sanic hello.app
輕鬆運作。
[2018-12-30 11:37:41 +0200] [13564] [INFO] 快@ http://127.0.0.1:8000 [2018-12-30 11:37:41 +0200] [13564] [INFO] 開始工作 [13564]
並且,我們可以驗證它是否正常工作: curl localhost:8000 -i
HTTP/1.1 200 好 連線:保持活動狀態 保持活動:5 內容長度:17 內容類型:application/json {「你好世界」}
現在,讓我們快速建立一些東西!
最低 Python 版本為 3.8。如果您需要 Python 3.7 支持,請使用 v22.12LTS。
使用者指南、變更日誌和 API 文件可在 sanic.dev 找到。
提出問題或加入對話。
我們總是很高興有新的貢獻。我們已經標記了適合任何想要入門的人的問題,並歡迎在論壇上提問。請查看我們的貢獻指南。