Flask的路由和檢視函式(簡談)
阿新 • • 發佈:2019-01-22
概念:
路由:客戶端把請求傳送給Web伺服器,Web伺服器再把請求傳送給程式例項。程式例項需要知道對每個URL請求執行哪些程式碼,所以儲存了一個 URL 到 Python
函式的對映關係。處理URL和函式之間關係的程式稱路由。
在Flask定義路由的最簡便方式,是使用程式例項提供的app。route修飾器,把修飾的函式註冊為路由:
如:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'hello world'
@app.route('/user', methods=['GET'])
def hello_user():
return 'hello user'
if __name__ == '__main__':
app.run(debug=True)
路由的本質
路由的本質,是URL
繫結, @app.route()
裝飾器用於把一個函式綁於一個URL
上,如上,/
綁定了index()
函式,/user
綁定了hello_user()函式,這個例子將 index()
函式註冊為程式根 '/'
地址。訪問 http://localhost:5000/
後,會觸發伺服器執行 index()
函式,這個函式的返回值稱為響應,是客戶端接收到的內容。
像 index()
這樣的函式稱為檢視函式。檢視函式返回的響應可以是包含 HTML 的簡單字串,也可以是複雜的表單
路由查詢方式
同一路由指向兩個不同的函式,在匹配過程中,至上而下依次匹配
from flask import Flask
app = Flask(__name__)
def hello():
return '<h1>hello world</h1>'
@app.route('/')
def hello_2017():
return '<h1>hello 2017</h1>'
所以上面路由 /
輸出的結果為 hello 函式的結果