为什么预取碎片

2021-06-03 23:40:56

在编码网页时,有时您也知道某些东西是非常需要的,即使它不需要,也是如此。您可以给抄送器一个提示:浏览器将拍摄一个注释,然后当它不再有任何重大才能来备注它可能会要求URL。稍后,如果它确实需要URL,它将已经存在了。在查看幻灯片N实际上瞬发时预取幻灯片N + 1的图像。这适用于图像,还适用于CSS,JS,HTML,任何内容!或者至少,它习惯了。

浏览器存储它在缓存中提取的URL。在它的implest这看起来像一个大词典,从URL到该URL的内容:

不幸的是,攻击者可以在其他网站上了解您的浏览,以及所有主要浏览器(Safari,Chrome,Firefox)现在已经分区了他们的缓存。这意味着如果您在A.Test并加载A.Test / JS,如果您转到B.Test并再次加载A.Test / JS,则不会重复使用。字典' s键看起来像(网站,网址):

即使键A.Test:A.Test / JS和B.Test:A.Test / JS都具有完全相同的JS字节,他们需要保持分开以避免隐私泄漏。

你应该在哪里存放在缓存中?好吧,这取决于胜利者要做什么。如果它们要点击B.Test / index.html的链接,那么当他们需要HTML时,他们会访问B.TEST等,所以要将其存储为B.Test:B.Test / index.html。另一方面,如果它'在iframe中加载,用户仍然是a.test,因此您希望将其存储为a.test:b.test / index.html。你只是' t知道。 JustGuess?猜测是一个危险之一:如果您在错误的键处存储它,那么您将再次获取相同的资源,只需将其存储在Theright键下。用户将看到双重获取。

它在这里不同地浏览浏览器。我制作了测试页面(iframe,newpage),而Firefox猜测你' ll在Aniframe,Safari(带有实验链接预订的设置)和Chrome猜测你' ll在新页面上加载它。

除了,我认为这意味着更多的决定而不是有可能的决定。我怀疑任何明确考虑的概率都会被预取资源用于IFrame。相反,MyGuess是在更新巨额代码以添加缓存密钥时,多个开发人员刚刚结束了不同的东西。

这里的Hoping浏览器有兴趣修复这个,Andstopping那些双重获取感兴趣。