在flask中定義url路由規則有三種方法:
1、使用flask.flask.route()裝飾器
2、使用flask.flask.add_url_rule函式
3、直接訪問底層的werkzeug路由系統:flask.flask.url_map
下面就第1,2兩種方法進行講解:
flask.flask.route()裝飾器的函式原型為:route(rule, **options)
flask.flask.add_url_rule函式的原型為:add_url_rule(*args, **kwargs)
其實,在底層,route裝飾器也是呼叫add_url_rule函式的。
以下引數是上述兩個函式所接受的:
rule:url的規則,如'/' , '/index' 字串型別
endpoint:所註冊的url規則的端點。沒有特別宣告的話,flask通常將檢視函式作為url規則的端點。
view_func:檢視函式,即預設的endpoint,當訪問之前定義的rule時,由該函式處理請求。該檢視函式也可以通過view_functions字典來指定。該字典的key是函式名稱,value是函式本身。
defaults:規則的預設值,字典型別。可以為同乙個函式定義多重規則,然而這些規則必須是唯一的。
如:def show_user(page):
pass
當訪問page 1時,url為/users/ ;當訪問page n時,url為/users/page/n
subdomain:為submain指定規則,目的是防止subdomain matching在使用。如果沒有指定的話,採用預設的subdomain。
**options:這些選項傳遞給底層的rule物件
路由表的建立
1.路由表 由很多路由條目組成,每個條目都指明去往某個網路的資料報應該由哪個介面傳送,其中最後一條是預設路由條目。2.路由條目 路由表中一行,每個條目主要由目的網路位址 子網掩碼 下一跳位址 傳送介面四部分組成,如果要傳送的資料報的目的網路位址匹配路由表中的某一行,就按規定的介面傳送到下一跳位址。3...
IP路由表的標誌
netstat r或者route print,route print命令後也可指定匹配資訊,具體可看幫助資訊 route help netstat r或者route.其實兩個系統的命令都差不多。本文以ubuntu示例說明。1.搜尋匹配的主機位址 2.搜尋匹配的網路位址 3.搜尋預設表項 預設表項一般...
路由表的生成及其演算法
路由表 在計算機網路中,路由表或稱路由擇域資訊庫 rib 是乙個儲存在路由器或者聯網計算機中的電子 檔案 或類資料庫。路由表儲存著指向特定網路位址的路徑 在有些情況下,還記錄有路徑的路由度量值 路由表中含有網路周邊的拓撲資訊。路由表建立的主要目標是為了實現路由協議和靜態路由選擇。在現代路由器構造中,...