知識點:
1、路由
2、重定向
3、請求方式
4、PostMan使用
一、概況
說到路由,其實就是我們在瀏覽器輸入地址後,後臺進行匹配,如果匹配上,則執行此檢視函式並返回內容。我們經過前面的例子也看出來Flask
是用一個叫route()
的裝飾器進行裝飾到檢視函式上。
匹配的內容是去掉域名和埠後面地址,比如:http://127.0.0.1:8000/index
這個地址,去掉域名和埠後就剩下/index
這部分內容,所有我們只要裝飾/index
就可以了。
二、路由
我們來寫一個首頁檢視和個人中心檢視,並用路由裝飾上。 提示:如果你沒有設定DEBUG = True,請重新執行伺服器 如下:
from flask import Flask
app = Flask(__name__)
@app.route('/') # 代表首頁
def index(): # 檢視函式
return 'my index !' # 返回內容
@app.route('/center') # 代表個人中心頁
def center(): # 檢視函式
return 'my flask!' # 返回內容
if __name__ == '__main__':
# 0.0.0.0代表任何能代表這臺機器的地址都可以訪問
app.run(host='0.0.0.0', port=5000) # 執行程式
複製程式碼
我們在瀏覽器上輸入```http://127.0.0.1:5000/``,返回的內容是:
我們在瀏覽器上輸入http://127.0.0.1:5000/center
,返回的內容是:
三、重定向
重定向是網站比較常用的地址跳轉,比如我們在網站登入後,需要重新跳轉到首頁,這個功能我們就可以用到重定向。在Flask
中重定向需要用到下面模組:
from flask import redirect, url_for
複製程式碼
redirect
函式用於重定向。
url_for
引數是檢視函式函式的名字,它會根據檢視函式的名字找到裝飾次檢視的路由。
from flask import Flask
from flask import abort, redirect, url_for
app = Flask(__name__)
@app.route('/') # 代表首頁
def index(): # 檢視函式
return 'my index !' # 返回內容
@app.route('/center') # 代表個人中心頁
def center(): # 檢視函式
return 'my flask!' # 返回內容
@app.route('/login') # 代表登入
def login(): # 檢視函式
return redirect(url_for('index'))
if __name__ == '__main__':
# 0.0.0.0代表任何能代表這臺機器的地址都可以訪問
app.run(host='0.0.0.0', port=5000) # 執行程式
複製程式碼
我們在瀏覽器輸入http://127.0.0.1:5000/login
會發現重定向到了首頁。在瀏覽器檢查我們也可以看到:
四、請求方式
我們知道HTTP有很多的請求方式,每中請求方式都代表不同的意思。常用的請求方式有:
請求方式 | 含義 |
---|---|
GET | 獲取資源 |
POST | 新增資源 |
PUSH | 更新資源 |
DELETE | 刪除資源 |
OPTIONS | 詢問支援的方法 |
我們登入功能都會採用POST
方式做,我們現在的登入檢視是GET
請求,那麼我們把登入檢視改成支援POST
,
@app.route('/login',methods=['POST']) # 代表登入
複製程式碼
這個時候我在瀏覽器再訪問一下:
這個錯誤的意思就是請求方式不允許,因為在瀏覽器地址輸入的這種請求方式是GET
請求。不過我們可以借用PostMan
這樣的工具模擬POST
請求。
還是可以看出來,它返回的是重定向到首頁的內容。
歡迎關注我的公眾號: