我使用的是谷歌云存储和asp.net核心6。
为了配置谷歌云存储,我使用了这篇文章:https://medium.com/net-core/using-google-cloud-storage-in-asp-net-core-74f9c5ee55f5
上传和删除文件都很好。
我遇到的唯一问题是,当我删除一个文件时,该文件仍然可以访问。(当我查看bucket时,我可以看到文件实际上已经不见了(。
所以我试着在谷歌云平台上手动删除它,但我一直遇到同样的问题。带有链接的图像仍然可见。
即使当我上传与旧图像同名的新图像时,当显示或下载图像时,它仍然是旧图像。
我尝试了不同的浏览器,以防它可能与缓存有关,但这也没有帮助。
我还检查了对象版本控制是否关闭
我还可以看到,在bucket中,"创建日期"实际上发生了变化。
这听起来像是将对象存储在缓存中(谷歌的缓存、浏览器或两者之间的任何代理(。
公共共享对象默认为可缓存1小时。在此之后,更改应该是可见的。如果您不能接受,请将Cache-Control
标头/元数据设置为较短的时间或no-store
。