Flask 创建一个简单的例子
Flask 中文文档
https://dormousehole.readthedocs.io/en/latest/
在 PyCharm 添加 Flask
创建 hello.py 文件
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return '<h1>Hello world</h1>'
if __name__ == '__main__':
app.run(debug=True)
# 启动
python hello.py
# 浏览器访问 http://127.0.0.1:5000/
app.run(host='0.0.0.0', port=5001, debug=True)
host='0.0.0.0' # 可以外网访问
port=5001 # 启动端口
debug:
True 开启 debug 调试模式,只要代码改变服务器会重新加载最新的代码,适用于开发模式
False 默认 代码发生改变不会自动加载 适用于 production 环境
创建配置文件
vi settings.py
ENV = 'development'
DEBUG = True
# 加载配置
vi hello.py
from flask import Flask
import settings
app = Flask(__name__)
app.config.from_object(settings)
@app.route('/')
def index():
return '<h1>Hello world</h1>'
if __name__ == '__main__':
app.run()
返回字符串
data = {'a': '北京', 'b': '上海', 'c': '深圳'}
@app.route('/getcity/<key>')
def get_city(key):
return data.get(key)
返回整数
@app.route('/add/<int:num>')
def add(num):
print('--->', type(num))
result = num + 10
return str(result)
返回 float 类型
@app.route('/add1/<float:money>')
def add1(money):
print('--->', type(money))
return str(money)
返回路径
@app.route('/index/<path:p>')
def get_path(p):
print('--->', type(p))
return p
请求路由解析
from flask import Flask
import settings
app = Flask(__name__)
app.config.from_object(settings)
@app.route('/klvchen/') # 路由中定义'/',无论请求的URL是否带/,都可以执行视图函数,如果请求没有/,浏览器做了一次重定向
def klvchen():
return 'hello world'
@app.route('/about') # 对于该路由,若请求添加了 / ,http://127.0.0.1:5000/about/ 显示 Not Found
def about():
return 'The about page'
if __name__ == '__main__':
app.run()