Сайт учебника Flask здесь говорит, что для создания RESTful API вы должны писать классы, расширяющие restful.Resource
, а затем добавьте их в API:
app = Flask(__name__)
api = restful.Api(app)
class HelloWorld(restful.Resource):
def get(self):
return {'hello': 'world'}
api.add_resource(HelloWorld, '/')
Тем не менее, я просмотрел довольно много учебников, которые просто используют функции с декоратором @app.route('/path')
, который я больше привык видеть в приложениях Flask. Например, здесь, они имеют:
@app.route('/todo/api/v1.0/tasks', methods=['GET'])
def get_tasks():
return jsonify({'tasks': tasks})
И здесь:
@app.route('/')
def api_root():
return 'Welcome'
В чем разница между использованием класса restful.Resource
и только украшенными функциями, если таковые имеются? Если нет различий, что я должен делать по соглашению для создания RESTful API?