For a little while the YUI has been hosted by Yahoo; now Google is doing the same for jQuery, Prototype et al. There’s some documentation available but essentially you do e.g.:
(You can select specific major/minor versions via different URLs, though this places some limitations on the expiry headers that get sent back.)
Google recommends that you load the frameworks via google.load()
. What
is the advantage of doing this? It seems to do nothing other than add
overhead unless there are complicated dependencies.
The headers that come back are
HTTP/1.0 200 OK Last-Modified: Sat, 24 May 2008 00:39:29 GMT Content-Type: application/x-javascript Expires: Wed, 27 May 2009 20:51:04 GMT Date: Tue, 27 May 2008 20:51:04 GMT Cache-Control: public, max-age=31536000 Content-Encoding: gzip Server: GFE/1.3 Connection: Close
which seem pretty sensible. (Curiously, you only get a gzip response
with a Accept-Encoding that includes gzip and a User-Agent Google
recognises, like that of Firefox.
wget --header="Accept-Encoding: gzip,compress"
won’t do it.)
I don’t know of any privacy or service guarantees. However, as Dion Almaer points out, they’re served from a ajax.googleapis.com, not google.com, so users’ google.com cookies aren’t available for tracking. As of now the service doesn’t set any either.
I’ve done a few quick tests, and serving prototype.js (30k, compressed) from Google to the UK and US is 4-5 times as fast as prototype.js from beebo.org (in Paris). For Australia, though, it’s only slightly faster.