安装:pip install flask(有手就行)
定位:主流轻型框架,简单易用
初始化组件:
import
from flask import Flask, request
app = Flask(__name__)
以装饰器的形式管理路由:
@app.route('/api1', methods=['POST'])
def revData():
#Token校验
try:
token = request.headers['Token']
except KeyError:
return make_resp('1', 'TokenNeed')
if token != auth_token:
return make_resp('2', 'token error')
#获取json格式的数据
try:
data = json.loads(request.get_data())
return 'success'
程序入口:
if __name__ == '__main__':
app.run(host='0.0.0.0', port=9002) #设置成0.0.0.0可使用ip地址访问
重定向和返回状态码问题:
使用redirect()实现重定向问题,abort()实现返回状态码问题
from flask import abort, redirect, url_for
@app.route('/')
def index():
return redirect(url_for('login'))
@app.route('/login')
def login():
abort(401)
this_is_never_executed()
上例将用户从主页重定向到了一个不能访问的页面(xxxx.com/login),但该页面显示的只是一个黑白的错误页面,如果需要显示自定义的页面,可以使用errorhandler()装饰器:
from flask import render_template
@app.errorhandler(404)
def page_not_found(error):
return render_template('page_not_found.html'), 404
关于响应:
@app.errorhandler(404)
def not_found(error):
resp = make_response(render_template('error.html'), 404)
resp.headers['Something'] = 'value'
return resp
上例可以在响应头部写入自定义的信息
版权声明:本文为hush19原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。