2.4、一个完整的程序
整个 hello.py程序脚本就是把前面介绍的三部分合并到一个文件中。
hello.py:一个完整的 Flask 程序
#!/usr/bin/env python
#_*_ coding:utf-8 _*_
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return '<h1>Hello World!</h1>'
if __name__ == '__main__':
app.run(debug=True)
要想运行这个程序,请确保激活了你之前创建的虚拟环境,并在其中安装了 Flask。
然后使用下述命令启动程序:
(venv)[user@localhost test]$ python hello.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 696-164-300
现在打开 Web 浏览器,在地址栏中输入 http://127.0.0.1:5000/。如下图所示:
如果你输入其他地址,程序将不知道如何处理,因此会向浏览器返回错误代码 404。访问不存在的网页时,你也会经常看到这个熟悉的错误。
示例 2-2 是这个程序的增强版,添加了一个动态路由。访问这个地址时,你会看到一则针
对个人的欢迎消息。
示例 2-2 hello.py:包含动态路由的 Flask 程序
#!/usr/bin/env python
#_*_ coding:utf-8 _*_
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return '<h1>Hello World!</h1>'
@app.route('/user/<name>')
def user(name):
return '<h1>Hello, %s!</h1>' % name
if __name__ == '__main__':
app.run(debug=True)
测试动态路由前,你要确保服务器正在运行中,然后访问 http://localhost:5000/user/Dave。
程序会显示一个使用 name 动态参数生成的欢迎消息。请尝试使用不同的名字,可以看到视图函数总是使用指定的名字生成响应。