Android 为什么Firebase数据库REST API不返回缓存头
我有一个android应用程序,它使用的是OkHttp客户端,我使用它的RESTAPI请求firebase实时数据库中的一些数据。Firebase实现ETAG,并且OkHttp正确地执行条件请求。但它还返回Android 为什么Firebase数据库REST API不返回缓存头,android,firebase,firebase-realtime-database,okhttp3,cache-control,Android,Firebase,Firebase Realtime Database,Okhttp3,Cache Control,我有一个android应用程序,它使用的是OkHttp客户端,我使用它的RESTAPI请求firebase实时数据库中的一些数据。Firebase实现ETAG,并且OkHttp正确地执行条件请求。但它还返回缓存控制:no Cache头,这意味着OkHttp将仅在条件get期间使用缓存,但我需要控制缓存(设置max stale)或在没有网络时使用缓存 我是否可以请求Firebase,使其提供不同的缓存控制值?Firebase数据库返回该标头,以指示中间层不应缓存数据,因为这可能取决于身份验证状态
缓存控制:no Cache
头,这意味着OkHttp将仅在条件get期间使用缓存,但我需要控制缓存(设置max stale
)或在没有网络时使用缓存
我是否可以请求Firebase,使其提供不同的
缓存控制值?Firebase数据库返回该标头,以指示中间层不应缓存数据,因为这可能取决于身份验证状态
无法告诉数据库不返回该标志
请记住:虽然OkHttp可能不会缓存数据,但应用程序可以存储结果。这是预期的行为,因为您的应用程序实际上可以验证用户是否有权访问数据,而OkHttp没有办法这样做。是的,这很有意义,谢谢。在我的例子中,虽然读取权限是在没有任何身份验证的情况下打开的,所以我的例子中的头可以省略,对吗?没有办法告诉数据库不返回该标志。