多列 + AWS API 网关上的春季可分页排序



目前,我在同时使用Spring的Pageable和AWS API Gateway时遇到了这个问题。Spring 用于对多列进行排序的 url 是这样的:

/items?sort=name,asc&sort=id,asc

通过 AWS API 网关,它变得如下所示:

/items?sort=id,asc

我尝试了以下方法:

/items?sort=name,asc,id,asc

但它抛出 500 错误并带有消息"No property asc found for type Item!"

我知道这应该是 AWS API 网关的问题,但根据这篇文章,自 2015 年以来,AWS 似乎一直忽略它。

如果您有任何替代方案或解决方法,请告诉我,谢谢!

感谢奥利弗·吉尔克(Oliver Gierke),解决方法可以是

/items?sort=name,id,asc

因此,所有字段都按同一方向(ASC 或 DESC)排序。

只需使用

/items?sort=name,id

不需要 ASC,因为默认排序方向为 ASC。

您还可以使用多个sort参数,例如

/items?sort=name,asc&sort=id,asc

这很有用,特别是如果存在升序和降序的组合,例如

/items?sort=name,asc&sort=id,desc

。春天应该返回类似的东西:-

{
    ...
    "sort": [
        {
            "direction": "ASC",
            "property": "name",
            "ignoreCase": false,
            "nullHandling": "NATIVE",
            "ascending": true,
            "descending": false
        },
        {
            "direction": "DESC",
            "property": "id",
            "ignoreCase": false,
            "nullHandling": "NATIVE",
            "ascending": false,
            "descending": true
        }
    ],
}

最新更新