【发布时间】:2018-06-29 00:04:25
【问题描述】:
如果关于何时/何时不使用上述将信息传递给 REST 调用的方法有某种标准,我一直在尝试寻找答案。
我一直在到处寻找,但每篇文章都只讨论列出的 2 种方法之间的区别,或者说 3 种,而不是全部 4 种。
【问题讨论】:
-
在担心这些注释之前,您必须了解 REST API 通常是如何工作的。这就是 URL 路径和查询参数以及发送 POST/PUT 正文与 GET 方法之间的区别。注释只允许您在 Spring 控制器中获取已映射到 POJO 的值。
-
@tsolakp 我了解 POST、PUT、GET、HEAD、DELETE 等方法之间的区别。我了解 REST API 的工作原理以及上述注释。我要问的是向 REST API 调用发送数据的“标准”是什么。例如,如果我要发送一个参数,我应该怎么做?为什么以及为什么我不应该把它放在标题中?比如,X : 0, Y : 2 等等。为什么我不应该/不应该像 { "x" : 0, "y" : 2 } 这样在请求正文中将它作为 JSON 对象发送?为什么我应该/不应该让它成为路径的一部分,例如 /rest/path/x/0/y/2 (显然很糟糕,但只是示例)或 /rest/path/?x=0&y=2
-
这就是我的观点。这些问题与注释无关,更多的是针对 REST 最佳实践。
-
我的问题不是这么说的吗?仅仅因为我有一个@infront(我理解这意味着它是一个注释)并不一定意味着我在询问注释。事实上,如果你阅读完整的问题,我从来没有问过注释本身,只是在哪里最好使用它们,即 REST 最佳实践。
标签: java spring rest spring-boot restful-architecture