2012-08-27 42 views
0

我知道浏览器已经使用缓存和gzipping来减轻负担,但为什么不差异?Do/Can浏览器在http请求中使用差异吗?

说我有一个30k +行的JavaScript文件,我改变它的单个字符。甚至gzip,浏览器将不得不再次下载整个东西。在这里使用差异不是更好吗?

回答

1

那么这可能是你的senario的一个好主意,但HTTP并不是为此设计的。 HTTP旨在通过Internet提供文档。

HTTP可以选择这里说的是你的内容,只要你喜欢,但你不需要那么小的差异下载文件。这是E-Tag与弱选项(W/...)的工作。

0

这将是很好,但从根本上困难/不可能。

diff假定你正在两边使用相同(或几乎相同)的原始副本。你将如何检查浏览器中的缓存副本是否足够相似以至于diff可以清楚地应用?

+0

那么我的观点是,服务器可以做更多。也许文件是完全不同的 - 没有差异。也许这是一个字符差异 - 差异。 – mowwwalker

+0

你如何生成差异?如果您尝试提供v3.14,但浏览器缓存了v2.718,会怎么样? –

+0

我的意思是服务器会产生差异...其实,我明白你的意思:服务器也必须知道浏览器的版本。 – mowwwalker