[Python网络编程] flask框架后端接口基本使用

安装: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

上例可以在响应头部写入自定义的信息

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章