[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

上例可以在響應頭部寫入自定義的信息

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