用于jQuery Gird Web API 404的Kendo UI

问题描述 投票:1回答:1

我正在使用Kendo UI for jQuery Gird从ASP.NET Web API中获取一些数据。数据按预期加载,并且一切正常。但是,自从我启用服务器端过滤(这仍然是前面的问题here所要解决的问题)后,每当应用某些过滤器时,我经常会收到404错误。

并非总是要过滤记录的请求失败,但是这种情况偶尔发生,而且并非总是如此。我无法确定其根本原因。到目前为止,我可以确定的是,没有与网络相关的问题导致此问题(已在本地计算机上进行了测试)。

我唯一关注的问题是偶尔的404,以防过滤器随请求一起传递。

还有以下是数据源配置:

            dataSource: {
                transport: {
                    read: {
                        type: "POST",
                        url: "/api/MyController"
                    }
                },
                schema: {
                    model: {
                        fields: {
                           ...
                        }
                    },
                    data: "data",
                    total: "total",
                    aggregates: "aggregate"
                },
                serverPaging: true,
                serverSorting: true,
                serverAggregates: true,
                serverFiltering: true,
                pageSize: 20,
                aggregate: [
                    ...
                ],
            }
asp.net-web-api kendo-ui kendo-grid
1个回答
0
投票

似乎在传递多个过滤器并且服务器拒绝请求的情况下,查询参数过长。

一种可能的解决方案是增加允许的查询参数长度(我没有使用)。

或者,我将请求切换到POST(现在已将过滤器作为正文的一部分传递了,并且它解决了我的问题。

transport: {
    read: {
        type: "POST",
        url: "/api/Data/MyData"
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.