使用POST作为URL字符限制的变通方法

And*_*ech 10 architecture rest http-verbs

如果您有一个API并且仅仅因为URL长度限制和请求中复杂参数的传递而支持POST操作,您是否仍然可以说您拥有RESTful架构?

以上基本上意味着对于这个特定的(只读)API,GET和POST之间没有语义差异,因此使用POST可以完成的事情也可以通过POST完成(但反之亦然)限制).

这仍然会使该架构的风格成为RESTful吗?

Dar*_*ler 5

从技术上讲,您没有违反任何限制。但是,您正在严重降低请求的自我描述性。这将导致失去缓存响应的能力。能够缓存响应是构建有效 REST 系统所需的基本功能。

  • +1 这是很重要的一点。我还建议,如果您遇到 URL 字符限制,检查您的 URL 方案以查看是否有重构的机会可能是明智的。可能有太多的查询选项,就像你有太多的函数或方法参数一样。 (2认同)