Java Spring数据rest POST请求
我正在使用Spring Data Rest开发一个测验系统,该系统具有以下结构: 1小测验包含许多问题Java Spring数据rest POST请求,java,spring,rest,spring-data,Java,Spring,Rest,Spring Data,我正在使用Spring Data Rest开发一个测验系统,该系统具有以下结构: 1小测验包含许多问题 一个问题包含许多答案 我们希望用以下URL结构来表示这一点: 获取/测验服务/测验/1/问题/1/答案-获取测验1中属于问题1的所有答案。 POST/测验服务/测验/1/问题/1/答案-在测验1中为问题1添加答案。 POST/测验服务/测验/1/问题-在测验1中添加一个问题 目前,当我们尝试发布到上面的内容时,我们得到了一个HTTP 40左右的代码 以上URL中的所有ID都是唯一的。以下两个不
一个问题包含许多答案 我们希望用以下URL结构来表示这一点: 获取/测验服务/测验/1/问题/1/答案-获取测验1中属于问题1的所有答案。
POST/测验服务/测验/1/问题/1/答案-在测验1中为问题1添加答案。
POST/测验服务/测验/1/问题-在测验1中添加一个问题 目前,当我们尝试发布到上面的内容时,我们得到了一个HTTP 40左右的代码 以上URL中的所有ID都是唯一的。以下两个不同的测验涉及同一个问题,会导致问题: /测验服务/测验/1/问题/1-可以吗
/测验服务/quizzes/2/questions/1-鉴于上述情况,将导致找不到HTTP 我们有一个存储库界面,用于所有3个测试、问答 根据和我们看到的其他人,我们知道您可以发布到/quick service/questions,并且可以包括到测验的链接,或者向测验端点发出第二个请求,添加问题。尽管如此,我们还有什么办法可以做到以上几点吗
提前感谢Spring Data REST充分利用了超媒体,因此,尽管您对URI结构有一定的控制权,但您无法(或者如果需要)将其调整为您希望的样子。这里的实用方法是利用公开的链接关系,并使用文档中记录的链接关系
随着超媒体的使用,设计URI方案基本上变得无关紧要。重要的是资源公开的表示形式、它包含的链接等。Spring Data REST默认为您提供了很多,所有这些都在上面链接的文档中描述。您会遇到什么具体错误?我的建议是使用更多端点,并不是因为你的建议不一定能实现,而是从长远来看,它会让人非常困惑。尝试遵循REST模式,并为每个模式设置一个端点,即一个用于添加答案,一个用于添加问题等。您可以将此作为指导,以更直观地设计REST API。特别是“使用RESTful URL和操作”一节