Flask-RESTPlus
说明
安装
pip install flask-restplus
文档
使用
from flask_restplus import Api, Resource
api = Api(app)
@api.route('/users/<int:uid>', '/u/<int:uid>')
class UserAPI(Resource):
def get(self, uid):
return {'UserAPI': 'GET'}, 200
def put(self, uid):
return {'UserAPI': 'PUT'}
def delete(self, uid):
return {'UserAPI': 'DELETE'}
class UserListAPI(Resource):
def get(self):
return {'UserListAPI': 'GET'}
def post(self):
return {'UserListAPI': 'POST'}
api.add_resource(UserListAPI, '/users/', '/u/')
project/
├── app.py
├── core
│ ├── __init__.py
│ ├── utils.py
│ └── ...
└── apis
├── __init__.py
├── namespace1.py
├── namespace2.py
├── ...
└── namespaceX.py
from flask_restplus import Namespace, Resource, fields
api = Namespace('cats', description='Cats related operations')
CATS = [
{'id': 'felix', 'name': 'Felix'},
]
@api.route('/')
class CatList(Resource):
def get(self):
'''List all cats'''
return CATS
@api.route('/<id>')
class Cat(Resource):
def get(self, id):
'''Fetch a cat given its identifier'''
return {'id': 'felix', 'name': 'Felix'}
from flask_restplus import Api
from .namespace1 import api as ns1
from .namespace2 import api as ns2
# ...
from .namespaceX import api as nsX
api = Api(
title='My Title',
version='1.0',
description='A description',
# All API metadatas
)
api.add_namespace(ns1, path='/prefix/of/ns1')
api.add_namespace(ns2, path='/prefix/of/ns2')
# ...
api.add_namespace(nsX, path='/prefix/of/nsX')
from flask import Flask
from apis import api
app = Flask(__name__)
api.init_app(app)
app.run(debug=True)
推荐