对端点使用单个处理程序会违反 REST 原则吗?

Having a single handler for an endpoint would be against REST principles?

关于 this 教程(Miguel Grinberg:RESTful 应用程序与 Flask),我遇到了一些疑问。

本教程展示了如何创建具有多个路由的资源,并且每个路由都有不同的行为。

我的问题是关于 REST 架构的:

这是我所说的一个例子:

@app.route('/todo/api/v1.0/tasks', methods=['GET', 'POST'])                      
@app.route('/todo/api/v1.0/tasks/<int:task_id>', methods=['GET', 'PUT', 'DELETE'])
def tasks(task_id=None):                                                    
    if task_id is None:                                                         
        if request.method == "GET":                                             
            pass                                                                
        elif request.method == "POST":                                          
            pass                                                                
    else:                                                                       
        if request.method == "GET":                                             
            pass                                                                
        elif request.method == "PUT":                                           
            pass                                                                
        elif request.method == "DELETE":                                        
            pass  

Would it be against the REST principles, to have a more compact construction for a resource, instead of having multiple routes for each HTTP verb?

没有

REST 和 HTTP 都不关心您如何实现消息处理程序。他们只关心消息的语义。只要您的实现的响应与无聊的超媒体文档存储的响应没有区别,您就很好。