Python 为每个HTTP方法创建RESTful自定义路由
我有一个简单的资源类,它定义了一些API方法:Python 为每个HTTP方法创建RESTful自定义路由,python,rest,flask,flask-restful,Python,Rest,Flask,Flask Restful,我有一个简单的资源类,它定义了一些API方法: class RoomAPI(Resource): def get(self): # some code def post(self): # some code def put(self): # some code 然后我定义我的路线如下: api.add_resource(RoomAPI,'/api/rooms/') 所以,我的问题是:如何仅使用一个资源类为每个HTTP
class RoomAPI(Resource):
def get(self):
# some code
def post(self):
# some code
def put(self):
# some code
然后我定义我的路线如下:
api.add_resource(RoomAPI,'/api/rooms/')
所以,我的问题是:如何仅使用一个资源类为每个HTTP方法创建不同的路由
我想得到这样的API:
GET /api/rooms/get/
POST /api/rooms/create/
PUT /api/rooms/update/
简单的回答是,你不应该。那一点也不安宁 但是,如果你真的想,我想你可以这样做:
api.add_resource(RoomAPI,'/api/rooms/get', methods=['GET'])
api.add_resource(RoomAPI,'/api/rooms/create', methods=['PUT'])
api.add_resource(RoomAPI,'/api/rooms/update', methods=['POST'])
由于来自add\u resource()的未使用的
**kwargs
被传递到add\u url\u rule()
简短的回答是,您不应该这样做。那一点也不安宁
但是,如果你真的想,我想你可以这样做:
api.add_resource(RoomAPI,'/api/rooms/get', methods=['GET'])
api.add_resource(RoomAPI,'/api/rooms/create', methods=['PUT'])
api.add_resource(RoomAPI,'/api/rooms/update', methods=['POST'])
由于添加资源中未使用的**kwargs
被传递到添加url\u rule()