OData Url长度限制

Ven*_*nki 13 odata

浏览器对URL的长度有限制.IE有限制,Url长度不应超过2K字符.

当我形成$ filter equals查询时,我可以与多个输入值进行比较.在这种情况下,Url的长度将超过2K.

OData是否对Url的长度设置了任何限制?

谢谢

Vit*_*SFT 10

OData本身并不限制Url的长度,但正如您所指出的那样,大多数客户端和服务器都会这样做.因此,通常不会长时间生成URL是一个很好的方法.

您提到的问题(实现Contains运算符或类似的东西)有两种可能的解决方法:

1)使用服务操作为您处理此类查询.您可以传递编码为字符串或类似内容的多个输入值,或者服务操作可能事先知道这些.

2)使用long $ filter,但是在$ batch请求中发送请求.优点是Url的限制要大得多,你不太可能会遇到它.缺点是,即使您尝试执行GET请求,由于$ batch它通过Web传递为POST请求,因此它不会被缓存.