React Native Image缓存忽略图像URL的查询参数



在我们的React Native项目中,我们在图像URL之后获得了带有签名密钥的图像URL。像http://my_bucket.s3.amazon.com/my_profile.jpg?signing_key=I_am_changeable_every_time

我们显示上述URL如下:

<ImageView source={{ uri: photo.uri }} />

我们想反应本机图像组件可以为我们处理图像缓存。虽然React Native Image组件每次都会加载图像。一个可能的原因是,React Native Image组件实际上没有任何缓存功能。

然后,我们正在尝试找到一些外部反应图像库库。

但是,如我的理解,几乎所有图像缓存库都将整个图像URL视为缓存键。如果我们的图像具有签名_key参数,该怎么办,该签名会随着时间的流逝而变化

我们已经考虑使用 image_path 而不是 image_full_url 或在我们的业务上下文中作为缓存键中的image_id。虽然我们没有找到任何可以赋予我们这种能力的库。

我的问题是:我们如何处理可更改的图像URL缓存,您推荐任何库吗?

谢谢!

尝试反应本形图像。您可以告诉它忽略查询参数。

type ImageCacheManagerOptions = {
  headers: PropTypes.object,                      // an object to be used as the headers when sending the request for the url. default {}
  ttl: PropTypes.number,                          // the number of seconds each url will stay in the cache. default 2 weeks
  useQueryParamsInCacheKey: PropTypes.oneOfType([ // when handling a URL with query params, this indicates how it should be treated:
    PropTypes.bool,                               // if a bool value is given the whole query string will be used / ignored
    PropTypes.arrayOf(PropTypes.string)           // if an array of strings is given, only these keys will be taken from the query string.
  ]),                                             // default false
  cacheLocation: PropTypes.string,                // the path to the root of the cache folder. default the device cache dir 
  allowSelfSignedSSL: PropTypes.bool,             // true to allow self signed SSL URLs to be downloaded. default false
};

相关内容

  • 没有找到相关文章

最新更新