GET requests
For some of our GET, PUT, and DELETE requests, our API will need the ID of the Post to modify. The add_resource method can take multiple routes, so let's add the second route that captures the passed ID:
rest_api.add_resource(
PostApi,
'/api/post',
'/api/post/<int:post_id>',
endpoint='api'
)Now the get method will need to accept post_id as a keyword argument:
class PostApi(Resource):
def get(self, post_id=None):
if post_id:
return {"id": post_id}
return {"hello": "world"}The data to be sent to the client must be a representation of the Post objects in JSON, so how will our Post objects be translated? Flask Restful provides a way of translating any object to JSON through the fields object and the marshal_with function decorator.
Output formatting
The output format is defined by creating a dictionary of field objects that represent basic types. The key of the field defines what attribute the field...