字符串 Hateoas link 到 void 方法
String Hateoas link to a void method
我正在与 Spring Hateoas 合作,以实现 HTTP 响应中的 HAL 标准。我的控制器中有一个 HTTP DELETE 方法,returns 什么都没有(无效)。在对同一实体的响应中,我想提供一个 link 来删除资源。我尝试使用以下代码,但它给出了错误
Cannot resolve method linkTo(void)
resource.add(linkTo(
methodOn(DokumenteController.class)
.loeschenEinDokument(filenetDokumentZuordnung.getDokumentId()))
.withRel("download"));
有什么方法可以将 link 添加到 returns 无效的方法中?
我怀疑 link 到 DELETE
路线是否可行。
Hateoas 允许您发现您的 REST API,但是 REST API 意味着要删除 /document/42
上可用的文档,您应该调用相同的路由,但是使用 DELETE
方法。
基本上,您不必对删除方法进行 link,因为这是隐含的删除文档的方法。
不要returnvoid
。 Return ResponseEntity<Void>
代替。
很有可能,无论如何您都必须设置一些 headers,即使您没有 return 消息 body。或者你想设置一个状态码。
如果您的控制器有适当的请求映射,您还可以执行以下操作:
resource.add(linkTo(DokumenteController.class)
.slash(filenetDokumentZuordnung.getDokumentId())
.withRel("download"));
我正在与 Spring Hateoas 合作,以实现 HTTP 响应中的 HAL 标准。我的控制器中有一个 HTTP DELETE 方法,returns 什么都没有(无效)。在对同一实体的响应中,我想提供一个 link 来删除资源。我尝试使用以下代码,但它给出了错误
Cannot resolve method linkTo(void)
resource.add(linkTo(
methodOn(DokumenteController.class)
.loeschenEinDokument(filenetDokumentZuordnung.getDokumentId()))
.withRel("download"));
有什么方法可以将 link 添加到 returns 无效的方法中?
我怀疑 link 到 DELETE
路线是否可行。
Hateoas 允许您发现您的 REST API,但是 REST API 意味着要删除 /document/42
上可用的文档,您应该调用相同的路由,但是使用 DELETE
方法。
基本上,您不必对删除方法进行 link,因为这是隐含的删除文档的方法。
不要returnvoid
。 Return ResponseEntity<Void>
代替。
很有可能,无论如何您都必须设置一些 headers,即使您没有 return 消息 body。或者你想设置一个状态码。
如果您的控制器有适当的请求映射,您还可以执行以下操作:
resource.add(linkTo(DokumenteController.class)
.slash(filenetDokumentZuordnung.getDokumentId())
.withRel("download"));