Java cachingHttpclient不能忽略标题“;缓存控制:无缓存“;
我正在使用ApacheCachingttpClient从java代码中查询RESTAPI 我想缓存一些http响应,尽管接收到“cache Control:no cache”头导致cachingHttpClient不缓存文件 使用squid、mod_cache等独立http代理,我可以调整配置以忽略这些头并覆盖默认行为 我不想选择独立的http代理,而是选择100%的java代码Java cachingHttpclient不能忽略标题“;缓存控制:无缓存“;,java,caching,cache-control,apache-httpclient-4.x,Java,Caching,Cache Control,Apache Httpclient 4.x,我正在使用ApacheCachingttpClient从java代码中查询RESTAPI 我想缓存一些http响应,尽管接收到“cache Control:no cache”头导致cachingHttpClient不缓存文件 使用squid、mod_cache等独立http代理,我可以调整配置以忽略这些头并覆盖默认行为 我不想选择独立的http代理,而是选择100%的java代码 是否还有另一个http客户端可以提供更多的缓存控制 我可以实现一个重写头的中间层/代理吗 我可以通过继承来修补Cac
请求正被
canCachedResponseBeUsed
方法中的CachedResponseSuitabilityChecker
拒绝。如果您需要不同的行为,则该类将实现您自己的版本,然后使用cachingHttpClient
CachingHttpClient(HttpClient backend,
CacheValidityPolicy validityPolicy,
ResponseCachingPolicy responseCachingPolicy,
HttpCache responseCache,
CachedHttpResponseGenerator responseGenerator,
CacheableRequestPolicy cacheableRequestPolicy,
CachedResponseSuitabilityChecker suitabilityChecker,
ConditionalRequestBuilder conditionalRequestBuilder,
ResponseProtocolCompliance responseCompliance,
RequestProtocolCompliance requestCompliance)
拒绝点应来自CacheableRequestPolicy。子类无法继承长构造函数。因此,您必须将整个源代码复制到您的包中。这将使bug修复补丁变得困难。