此问题基于以下假设:可以将请求正文作为GET
请求的一部分提供-但不推荐/不适合安静的设计,如果不是这样,请在回答之前随意纠正我问题。
我有一个终结点(ASP .Net MVC,如果需要的话),它以FileResult
响应,基本上是“下载Zip文件”操作。要构建zip文件,它需要使用任意数量的id(文件id),并且可以执行所需的操作。
如果是查询字符串的一部分,则该Guid列表可能会快速增长,并且可能会超过最大长度(暂且不说这是多么现实)。
对我来说,这绝对是一个GET
请求,但我考虑了POST
只是为了让我可以利用请求正文来规避URL长度限制的任何限制。
规避此限制的好方法是什么?
答案 0 :(得分:1)
在这种情况下,您绝对可以使用POST
。您的两个假设都是正确的。 GET
中的请求正文未被普遍接受(并且我已经看到用于丢弃此类数据包的代理/安全工具),并且arbitrarily long query string也是不可能的。
您听说过Richardson Maturity Model吗?您可以很好地证明您的API为 1级API 。