Flask 执行函数,即使它从未在代码中调用(仅定义)
Flask executes function even though it is never called in code (only defined)
查看 Flask 的“hello world”示例代码(刚开始使用它),它是:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello'
if __name__ == '__main__':
app.run()
当我 运行 它(在 Pycharm 中)并在我的浏览器中转到本地主机时,它显示“你好”。
但是代码中从来没有调用过这个函数,只是定义了,所以我不明白为什么要执行它。
当您在浏览器中访问页面时,或使用某种 HTTP 请求客户端。您正在访问 root
,即 /
。
这里,你定义了一个路由:@app.route('/')
,指向函数hello_world
.
正在调用此函数,因为您在访问该页面时正在访问/
,即根目录。
如果你去 host:port/randomroute
,你会得到一个 404,因为没有为此定义路由。
查看 Flask 的“hello world”示例代码(刚开始使用它),它是:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello'
if __name__ == '__main__':
app.run()
当我 运行 它(在 Pycharm 中)并在我的浏览器中转到本地主机时,它显示“你好”。
但是代码中从来没有调用过这个函数,只是定义了,所以我不明白为什么要执行它。
当您在浏览器中访问页面时,或使用某种 HTTP 请求客户端。您正在访问 root
,即 /
。
这里,你定义了一个路由:@app.route('/')
,指向函数hello_world
.
正在调用此函数,因为您在访问该页面时正在访问/
,即根目录。
如果你去 host:port/randomroute
,你会得到一个 404,因为没有为此定义路由。