flask 之路由管理-藍圖(Blueprint)

  1. flask 藍圖介紹;python

          

   image.png           

2.藍圖項目相關目錄結構;json


image.png


3.藍圖相關模塊代碼;flask


(1).APP01 view 代碼;api


from flask import Blueprint
from flask import request, Response
import json
app01 = Blueprint('app01', __name__)

@app01.route('/api/v1', methods=['GET', 'POST', '[DELETE]'])
def mainApp0v1():
    data = Response(json.dumps({"code": 0, "data": "方法不容許"}), mimetype='application/json')
    if request.method == "GET":
        return QueryNamev1()
    else:
        return data
def QueryNamev1():
    data = "我是測試app01項目-api.v1版本"
    return Response(json.dumps({"code": 0, "data": data,"status":"success"}), mimetype='application/json')


(1).APP02 view 代碼;app

from flask import Blueprint
from flask import request, Response
app02= Blueprint('app02', __name__)
import json
@app02.route('/api/v1', methods=['GET', 'POST','[DELETE]'])
def mainAppv1():
    data =  Response(json.dumps({"code": 0, "data": "方法不容許"}), mimetype='application/json')
    if request.method == "GET":
        return QueryName()
    else:
        return data
def QueryName():
    data = "我是測試app02項目"
    return Response(json.dumps({"code": 0, "data": data, "status": "success"}), mimetype='application/json')


(4).藍圖(postman客戶端測試):ide


4.1 APP 01 測試;post

image.png


4.2 APP02 測試;測試

   image.png



5.針對同項目不一樣訪問路由訪問;spa

   5.1代碼示例;3d

from flask import Blueprint
from flask import request, Response
import json
app01 = Blueprint('app01', __name__)

@app01.route('/api/v1', methods=['GET', 'POST', '[DELETE]'])
def mainApp0v1():
    data = Response(json.dumps({"code": 0, "data": "方法不容許"}), mimetype='application/json')
    if request.method == "GET":
        return QueryNamev1()
    else:
        return data

def QueryNamev1():
    data = "我是測試app01項目-api.v1版本"
    return Response(json.dumps({"code": 0, "data": data,"status":"success"}), mimetype='application/json')

@app01.route('/api/v2', methods=['GET', 'POST', '[DELETE]'])
def mainAppv2():
    data = Response(json.dumps({"code": 0, "data": "方法不容許"}), mimetype='application/json')
    if request.method == "GET":
        return QueryNamev2()
    else:
        return data

def QueryNamev2():
    data = "我是測試app01項目-api.v2 版本"
    return Response(json.dumps({"code": 0, "data": data,"status":"success"}), mimetype='application/json')


5.2 Postman 測試結果;

    api v1版本

image.png    

api v2版本


image.png

相關文章
相關標籤/搜索