0

我正在考虑利用 JAX-RS 中的缓存控制选项。

但我所知道并完全理解的是,它用于GETPUT请求。有没有人试过用它来POST请求?

我正在构建一个满足客户请求的 RESTful 网络服务。它在内部将客户端的请求转发到另一个组件并将响应转储回客户端。相同请求的响应相同。

我如何使用缓存有时直接从缓存响应而不是转发/接收来自内部组件的响应?

我不能使用数据库或 nosql dDB 来缓存请求/响应。我想要在应用程序重新启动后丢失的内存中的某些内容。

4

1 回答 1

0

HTTP 具有安全不安全的方法,以及幂等或非幂等的方法。请参阅HTTP 规范

方法还可以具有“幂等性”的属性,因为(除了错误或过期问题)N > 0 个相同请求的副作用与单个请求相同。GET、HEAD、PUT 和 DELETE 方法共享此属性。

您可以随心所欲地使用GETPUTDELETE资源,无论您多久执行一次,结果都是一样的。

如您所见,POSTis not idempotetPOST一次、两次或更频繁地对资源的请求会有所不同。那是因为语义POST是 在你要的资源下面创建一些东西。POST

因此,缓存POST请求的结果是没有意义的。

于 2013-08-09T11:44:48.653 回答