Flask框架从入门到精通之路由(三)
知識點: 1、路由 2、重定向 3、請求方式 4、PostMan使用
一、概況
說到路由,其實就是我們在瀏覽器輸入地址后,后臺進(jìn)行匹配,如果匹配上,則執(zhí)行此視圖函數(shù)并返回內(nèi)容。我們經(jīng)過前面的例子也看出來Flask是用一個叫route()的裝飾器進(jìn)行裝飾到視圖函數(shù)上。 匹配的內(nèi)容是去掉域名和端口后面地址,比如:http://127.0.0.1:8000/index這個地址,去掉域名和端口后就剩下/index這部分內(nèi)容,所有我們只要裝飾/index就可以了。
二、路由
我們來寫一個首頁視圖和個人中心視圖,并用路由裝飾上。 提示:如果你沒有設(shè)置DEBUG = True,請重新運行服務(wù)器 如下:
from flask import Flaskapp = Flask(__name__) def index(): # 視圖函數(shù)return 'my index !' # 返回內(nèi)容 def center(): # 視圖函數(shù)return 'my flask!' # 返回內(nèi)容if __name__ == '__main__':# 0.0.0.0代表任何能代表這臺機(jī)器的地址都可以訪問app.run(host='0.0.0.0', port=5000) # 運行程序復(fù)制代碼我們在瀏覽器上輸入```http://127.0.0.1:5000/``,返回的內(nèi)容是:
我們在瀏覽器上輸入http://127.0.0.1:5000/center,返回的內(nèi)容是:
三、重定向
重定向是網(wǎng)站比較常用的地址跳轉(zhuǎn),比如我們在網(wǎng)站登錄后,需要重新跳轉(zhuǎn)到首頁,這個功能我們就可以用到重定向。在Flask中重定向需要用到下面模塊:
from flask import redirect, url_for 復(fù)制代碼redirect函數(shù)用于重定向。 url_for參數(shù)是視圖函數(shù)函數(shù)的名字,它會根據(jù)視圖函數(shù)的名字找到裝飾次視圖的路由。
from flask import Flask from flask import abort, redirect, url_forapp = Flask(__name__) def index(): # 視圖函數(shù)return 'my index !' # 返回內(nèi)容 def center(): # 視圖函數(shù)return 'my flask!' # 返回內(nèi)容 def login(): # 視圖函數(shù)return redirect(url_for('index'))if __name__ == '__main__':# 0.0.0.0代表任何能代表這臺機(jī)器的地址都可以訪問app.run(host='0.0.0.0', port=5000) # 運行程序復(fù)制代碼我們在瀏覽器輸入http://127.0.0.1:5000/login會發(fā)現(xiàn)重定向到了首頁。在瀏覽器檢查我們也可以看到:
四、請求方式
我們知道HTTP有很多的請求方式,每中請求方式都代表不同的意思。常用的請求方式有:
| GET | 獲取資源 |
| POST | 新增資源 |
| PUSH | 更新資源 |
| DELETE | 刪除資源 |
| OPTIONS | 詢問支持的方法 |
我們登錄功能都會采用POST方式做,我們現(xiàn)在的登錄視圖是GET請求,那么我們把登錄視圖改成支持POST,
復(fù)制代碼這個時候我在瀏覽器再訪問一下:
這個錯誤的意思就是請求方式不允許,因為在瀏覽器地址輸入的這種請求方式是GET請求。不過我們可以借用PostMan這樣的工具模擬POST請求。 還是可以看出來,它返回的是重定向到首頁的內(nèi)容。歡迎關(guān)注我的公眾號:
轉(zhuǎn)載于:https://juejin.im/post/5cb98999f265da03841289b2
總結(jié)
以上是生活随笔為你收集整理的Flask框架从入门到精通之路由(三)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: React 中 keys 的作用是什么?
- 下一篇: 机器学习中的凸优化理论