pythonweb開發 Python Web開發

2021-10-10 03:55:53 字數 1830 閱讀 2527

參考原文

wsgi介面

wsgi(web server gateway inte***ce)是乙個介面,用來遮蔽底部的細節(如tcp的建立連線,http原始請求和響應格式等)。wsgi介面定義非常簡單,只需要web開發者實現乙個函式,就可以響應客戶端的http請求。

這個函式有兩個引數:environ:包含所有的htttp請求的dict物件;start_response:乙個傳送http響應的函式。

這兩個引數,我們是沒有辦法提供的,是需要符合wsgi規範的伺服器來提供的。

python內建了乙個wsgi伺服器,這個模組就wsgiref,是用純python編寫的,不考慮任何的執行效率,僅供開發和測試使用。接下來,我們就來實現乙個基本的響應請求的處理。

首先,編寫hello.py,用於實現web應用程式的wsgi處理函式:

#hello.py

start_response('200 ok',[('content-type', 'text/html')])#返回響應的主體

return [b'

#server.py#匯入響應的模組函式:

在命令列可以看到wsgiref列印的log:

我們也可以根據environ裡的引數資訊,來生成動態的html。

總結:無論多麼複雜的web應用程式,入口都是乙個wsgi處理函式。http請求的所有輸入資訊都可以通過environ獲得,http響應的輸出都可以通過start_response()加上函式返回值作為body。

使用web框架

python中的web框架非常多,我們先直接選擇乙個比較流行的web框架——flask來使用。

首先使用pip(python包管理工具)來安裝flask:

sudo apt install python-pip #安裝pip

pip install flask#安裝flask

get / : 首頁,返回home頁

get /signin : 登陸頁,顯示登陸表單,用於使用者登陸

post /signin : 處理使用者輸入的登陸表單,返回登陸結果

flask通過python的裝飾器在內部自動地把url和函式給關聯起來,所以我們寫出的**應該這樣:

繼續輸入http://localhost:5000/signin:

輸入預設的使用者名稱admin和密碼password,登入成功:

輸入錯誤的資訊:

python web開發框架

django python web應用開發框架 django 應該是最出名的python框架,gae甚至erlang都有框架受它影響。django是走大而全的方向,它最出名的是其全自動化的管理後台 只需要使用起orm,做簡單的物件定義,它就能自動生成資料庫結構 以及全功能的管理後台。diesel 基...

Python Web開發框架

python中的web框架 flask例程 可重用成熟,穩健 可擴充套件性良好 提高開發速度 web框架中的概念 大包大攬的django 優點 完美文件。全套解決方案 cache,session,orm 強大的url路由配置 自助管理後台 缺點 系統緊耦合 自帶的orm不夠強大 template比較...

python web開發 Django後台管理

django自帶了管理後台,而且非常強大,這個模組是settings.py 中配置的django.contrib.admin應用。我們首先來建立乙個後台管理員使用者,並為其設定密碼。建立賬號 python manage.py createsuperuser會要求我們輸入使用者名稱 郵箱和密碼。建立好...