Flask 應用

2022-08-16 10:25 更新

為了測試 Flask 安裝,請在編輯器中將以下代碼輸入 Hello.py:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
   return 'Hello World'

if __name__ == '__main__':
   app.run()

必須在項目中導入Flask模塊。 

Flask類的一個對象是我們的WSGI應用程序。

Flask構造函數(shù)使用當前模塊(__name __)的名稱作為參數(shù)。

Flask類的route()函數(shù)是一個裝飾器,它告訴應用程序哪個URL應該調(diào)用相關的函數(shù)。

app.route(rule, options)
  • rule 參數(shù)表示與該函數(shù)的URL綁定。

  • options 是要轉發(fā)給基礎Rule對象的參數(shù)列表。

在上面的示例中,'/ ' URL與hello_world()函數(shù)綁定。

因此,當在瀏覽器中打開web服務器的主頁時,將呈現(xiàn)該函數(shù)的輸出。

最后,F(xiàn)lask類的run()方法在本地開發(fā)服務器上運行應用程序。

app.run(host, port, debug, options)

所有參數(shù)都是可選的

序號 參數(shù)與描述
1

host

要監(jiān)聽的主機名。 默認為127.0.0.1(localhost)。設置為“0.0.0.0”以使服務器在外部可用

2

port

默認值為5000

3

debug

默認為false。 如果設置為true,則提供調(diào)試信息

4

options

要轉發(fā)到底層的Werkzeug服務器。

上面給出的Python腳本是從Python shell執(zhí)行的。

python Hello.py

Python shell中的消息通知您:

* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

在瀏覽器中打開上述URL(localhost:5000)。將顯示“Hello World”消息。

這里注意,如果使用python自帶的idle運行的時候可能會報以下錯誤: 

Traceback (most recent call last): 

File “C:/learn/python/xuexi/web/demoflask/app.py”, line 27, in 

app.run(); 

File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\flask\app.py”, line 938, in run 

cli.show_server_banner(self.env, self.debug, self.name, False) 

File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\flask\cli.py”, line 629, in show_server_banner 

click.echo(message) 

File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\click\utils.py”, line 217, in echo 

file = _default_text_stdout() 

File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\click_compat.py”, line 621, in func 

rv = wrapper_func() 

File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\click_compat.py”, line 385, in get_text_stdout 

rv = _get_windows_console_stream(sys.stdout, encoding, errors) 

File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\click_winconsole.py”, line 261, in _get_windows_console_stream 

func = _stream_factories.get(f.fileno()) 

io.UnsupportedOperation: fileno

只要不用idle執(zhí)行就不會出錯了,不影響后續(xù)使用。改用cmd下Python執(zhí)行或者pycharm等運行都能成功。

調(diào)試模式

通過調(diào)用run()方法啟動Flask應用程序。但是,當應用程序正在開發(fā)中時,應該為代碼中的每個更改手動重新啟動它。為避免這種不便,請啟用調(diào)試支持

如果代碼更改,服務器將自行重新加載。它還將提供一個有用的調(diào)試器來跟蹤應用程序中的錯誤。

在運行或將調(diào)試參數(shù)傳遞給run()方法之前,通過將application對象的debug屬性設置為True來啟用Debug模式。

app.debug = True
app.run()
app.run(debug = True)

最新教程請前往 Flask 中文教程 進行學習!

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號