如何使 jax-rs 端点接受任何类型的 http 请求?

How to make a jax-rs end point accept any type of http request?

标题说明了一切。

是否有任何请求类型注释可以做到这一点?

或者用@POST、@GET 等所有必需的类型注释方法是否足够?

简答:

是的,您可以使用 @OPTIONS@HEAD@GET@POST@PUT@DELETE 和应在所有这些方法上调用资源方法。

长答案:

你不应该!每个 HTTP 方法都有它的语义。 @GET 是 'safe' 方法,因为它用于读取资源。例如 @POST@DELETE 是 'unsafe' 因为它们改变了资源的状态。

网络之所以有效,是因为人们遵守这些规则。网络爬虫知道他可以安全地对他知道的每个 URI 执行 @GET。他绝不会在 URI 上做 @DELETE。如果您的方法更改了 @GET 上的某些内容,您可能会遇到问题。

在此处找到更多不应该的答案: