扩展REST(烧瓶)响应中的URL

时间:2019-02-07 08:44:33

标签: python flask

我已使用@miguelgrinberg课程开发REST API来开发了烧瓶REST API。我正在使用蓝图方法(不是烧瓶不稳定的)。当我返回(资源URLS的)集合时,我的客户端必须进行多次调用以检索数据。是否有一种简单的方法可以使客户避免拨打多个电话。 例如:

{
    "tasks": [
        "http://localhost:7500/tasks-api/v1/tasks/id/1",
        "http://localhost:7500/tasks-api/v1/tasks/id/2"
    ],
    "pages": {
        "first_url": "http://localhost:7500/tasks-api/v1/tasks/?page=1&per_page=25",
        "last_url": "http://localhost:7500/tasks-api/v1/tasks/?page=1&per_page=25",
        "next_url": null,
        "page": 1,
        "pages": 1,
        "per_page": 25,
        "prev_url": null,
        "total": 1
    }
}

问题是如何(自动)扩展嵌套资源而无需其他API调用。

1 个答案:

答案 0 :(得分:0)

如果有不同的URL,显然您需要全部调用它们。如果有些重复,如此处所示,只需使用使用fork的函数缓存结果即可。

CREATE PROCEDURE YourName

     @name varchar(100) = NULL
    ,@id int = NULL

AS 
BEGIN 

    SELECT Name, ID 
    FROM YourTable
    where (ID is null or ID = @id)
    AND (Name is null or Name LIKE @name)

END