jQuery链接与下载的区别?

8
哪种方式更好?链接到http://ajax.googleapis.com上的jQuery包。还是下载相应的文件并在本地链接?有关系吗?链接可能会消失吗?还是在线文件可能会更新,最好链接到它?好奇。

谢谢, Tracy


6个回答

7
如果用户来自谷歌被禁止的国家怎么办?此外,我国曾经需要支付国际互联网流量费用(而地区流量是“免费”的),我怀疑在其他一些国家仍然存在这种情况。用户会对不得不为jQuery付费感到不满,即使是压缩后的。把你需要的文件放在自己的服务器上更安全。
编辑:另一个不使用谷歌服务器上的jQuery的原因(如果在你的内部网络使用:https://meta.stackexchange.com/questions/10071/employer-blocks-jquery-from-google-doh

1
如果你的目标受众是这样的人群,我想这是一个有效的考虑——我之前没有考虑到这一点 +1 - Michael Haren
但如果你不针对这样的受众,这并不是什么需要担心的事情。如果你使用备用方法,这就没有意义了。 - Andy E
一个备用方法。请详细说明?我的目标受众肯定是本地和美国,但将来是否有一种方法可以同时适应两者? - flipflopmedia
@flipflopmedia: 请查看https://dev59.com/mXNA5IYBdhLWcg3wUL_n#1014251。 - naivists

7

来自Google Code网站:

Google直接与每个库项目的关键利益相关者合作,并接受最新的稳定版本发布。一旦我们托管了给定库的一个发布版本,就会无限期地托管该发布版本。

Google托管jQuery库的主要目的之一是将其缓存在一个地方。考虑以下场景:

  1. 用户访问A网站
  2. A网站在同一域中拥有jQuery,因此浏览器下载该文件
  3. 用户访问B网站
  4. B网站在同一域中拥有jQuery,因此浏览器第二次下载该文件。

现在,如果我们都从Google服务器获取jQuery,则情况如下:

  1. 用户访问A网站
  2. A网站从Google加载jQuery,因此浏览器下载该文件
  3. 用户访问B网站
  4. B网站从Google加载jQuery,但是浏览器已经下载并缓存了它,所以再次获取文件是瞬间完成的。

1
这个解释再好不过了。非常感谢,我一定会选择直接链接到库而不是将文件放在我的服务器上。祝你一切顺利! Tracy - flipflopmedia

1

我认为链接到谷歌的边缘缓存服务器通常是有意义的。谷歌几乎肯定比你有更好的正常运行时间,并且它们可能至少与响应时间一样快。此外,优势在于传入用户已经从它们那里缓存了jQuery,因此根本不需要下载。

我唯一想到的不这样做的情况是网站主要用于局域网内使用,其中本地副本确实是大多数访问者的本地副本(例如,位于局域网上)。


0

将文件链接到Google的一个重要理由是,如果用户最近访问过使用相同URL的其他网站,则可能已经在缓存中拥有该文件。


0

你决定,你控制你的文件还是不控制。带宽可能是一个小因素,但如果你有一个非常重要的网站,那么你肯定已经拥有了足够的带宽。

如果某些小的更改破坏了你的网站,而你又没有测试过新版本,会怎样呢?


-3
我建议下载jQuery并将jquery.js存储在同一服务器上。这样,如果链接的文件出现问题(尽管谷歌从未发生过这种情况),您也不会受到影响。
一个很大的争论是,如果jQuery发布了一个删除您所需函数的更新,您就不会被困扰,并且有时间修复它。

如果你认为谷歌链接会自动升级,那是不正确的。谷歌允许你通过精确控制版本号来控制此行为(例如1.3.x与1.3.1)。 - Michael Haren
好的,实际上很有道理,但是肯定有最新版本的链接吧? - Arcath

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接