首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用主窗口中的预连接资源提示来提高外部iframe中脚本的性能

问使用主窗口中的预连接资源提示来提高外部iframe中脚本的性能
EN

Stack Overflow用户
提问于 2019-12-22 17:25:24
回答 2查看 846关注 0票数 1

我有一个网站,有一个外国iframe。有多个第三方脚本运行在这个外国的iframe中。

我知道,如果我要从主窗口prefetch这些脚本-- iframe将需要重新加载这些源(就像prefetch在不同的域中所做的那样)。

如果我在主窗口中为第三方脚本添加或preconnect资源提示,那么在iframe中加载这些脚本的性能会得到改善,这是什么原因呢?就因为我把剧本热身了吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-12-23 11:22:17

一些浏览器出于隐私原因实现了双键HTTP缓存,以防止跟踪。这意味着如果domain1从CDN加载jQuery,然后domain2从同一个域加载相同的jQuery资源,那么它将再次被下载,而不是从HTTP重用相同的副本。

Safari已经做了一段时间了,Chrome最近宣布他们也会这样做。也这么做了。

这意味着您不能在外部域中使用prefetch或preload资源和脚本。

dns-prefetch和preconnect没有这样的隐私含义(就目前而言--关于预连接的潜在变化,请参见安迪的回答如下 )。因此,它们可以通过预先加载一些获得这些脚本的工作来改进iframes中的性能(尽管应该注意,浏览器可能并不总是使用相同的连接,这取决于浏览器。可能会影响preconnect的使用)。

票数 3
EN

Stack Overflow用户

发布于 2020-01-07 17:46:35

很可能连接池也会变成双键-https://github.com/whatwg/fetch/issues/917

在这个场景中,dns-prefetch将是可以的,但是对于在iframe中引用的资源来说,来自顶部框架原点的preconnect将不会作为顶部框架原点与iframe原点不同。

iframe的内容仍然应该能够使用链接元素或HTTP报头进行自己的预连接。

(添加为新答案,因为注释不能有换行符)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59446485

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档