所有
当我尝试解决从缓存加载图片时出现的问题,我从这篇文章中得到了一些答案:How to force a web browser NOT to cache images
它讨论了向src添加时间戳,如
<img src="picture.jpg?1222259157.415" alt="">
但在我的情况下,它不是一个直接的图片网址,它是来自github的头像网址:
<img src="https://avatars.githubusercontent.com/u/614?v=3" alt="">
当我向其添加时间戳79399.92599998368时,它变为:
<img src="https://avatars.githubusercontent.com/u/614?v=379399.92599998368" alt="">
我想知道为什么这个src仍然可以被正确识别并获得图像甚至更改了网址?谁能告诉我为什么这样有效以及浏览器如何解决这个问题?
由于
答案 0 :(得分:3)
网址中的问号(?
)将位置和query string分开,列出了GET参数。
在这种情况下,github只是忽略这些参数并提供由位置部分标识的图像。换句话说,github只是查看第一部分,因此总是提供相同的内容,但是用户的浏览器显然无法预测这一点,因此如果整个URL不完全适合缓存的内容,则需要始终加载内容。