Python 为每个HTTP方法创建RESTful自定义路由

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

我有一个简单的资源类,它定义了一些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方法创建不同的路由

我想得到这样的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()