【发布时间】:2016-09-06 16:53:22
【问题描述】:
我正在实现一个 RESTful API 接口,并且想知道一些限制和最佳实践。
我有一个 GET 请求,它从数据库表中检索一系列条目。
然而我的问题是,我允许我的调用者传入一组相当复杂的标准来过滤掉他们想要的东西。
我的情况是:
- 序列化为查询字符串后,我的查询字符串远远超出了 GET 请求的限制。
- 我想维护一个 RESTful API,因为我正在检索记录,所以我应该使用 GET 请求。
如果我不想违反 RESTful API,但想实现传递长查询参数字符串的目标,解决此问题的最佳实践是什么?
欢迎提出任何建议。谢谢!
【问题讨论】:
-
这里使用 POST 和 Google 翻译的标题的好答案:stackoverflow.com/questions/19771031/…
-
@ThomasDavidBaker 实际上,我认为您对引用 Google API 的答案是正确的。使用 POST 并欺骗 GET 方法可能是最干净、最简单和最无缝的方法。
-
@AlexandruMarculescu 感谢您的回答。尽管我确实同意这个问题有些相似(不完全相同)。请给我一些时间来改写它。可能它会引用 Thomas 发布的链接,因为在我看来,这是迄今为止我所看到和建议的最佳方法。
标签: rest get httprequest restful-url maxlength