我的代码包含几种不同的 DELETE 方法,其中一种方法带有一个参数,或者至少理想情况下它会带有一个参数。但是,当我通过 CURL 或 Web 客户端发出此请求时,它不起作用。其他 DELETE 请求功能正常,我已经在要传递的参数中进行了硬编码,只是为了查看调用是否有效。我用 PathParam 和 QueryParam 都试过了,但都不管用。这是我使用 PathParams 的方式,我很确定这是正确的,QueryParams 看起来非常相似,所以我也不想发布它。
@DELETE
@Path("/byId/{id}")
public void deleteById(@PathParam("id") String id)
然后对于 QueryParams 基本相同,但显然路径不同
据我了解,许多 RESTful API 会忽略任何带有 DELETE 请求的请求主体,或者将其视为 PUT 或 POST。有没有办法解决?基本上我有一个包含多个对象的数据库,我需要根据唯一标识符删除一个,以由客户端传入。如果没有办法解决这个问题,还有其他方法可以做到吗?
可能我在这里遗漏了一些明显的东西,因为我现在才使用 Jersey 几个星期,到目前为止,我什至从未听说过 RESTful 服务的概念。