【发布时间】:2019-03-06 07:56:10
【问题描述】:
我必须构建 JAX-RS Web 服务,它将从客户端资源中删除客户端,另外它应该在请求中有外部 uuid。
没有externalId的@DELETE方法的实现很简单
/myService/client/1
@DELETE
@Path("/client/{client}")
public Response removeClient(@PathParam("client") long client) {
// implementation code
return Response.status(200).build();
}
但是我应该在哪里添加 externalId 作为@QueryParam?
如果@QueryParam URI 是这个,它的设计是否正确?
/myService/client/1?externalId=d852e3fc-b7ac-42d7-b22b-74cb4da709ec
@DELETE
@Path("/client/{client}")
public Response removeClient(@PathParam("client") long client, @QueryParam("externalId") String externalId ) {
// implementation code
return Response.status(200).build();
}
或者我应该将 externalId 发送到request body 或@PatchParam?
哪个是正确的设计?
对于这种情况,我应该使用其他 HTTP 方法而不是 HTTP DELETE 吗?
【问题讨论】:
-
PathParam是一个好方法。你有什么问题?
标签: java http jax-rs http-method