MooTools Depender, Safari, etags and 412 Precondition Failed

/**
* This replaces the default MooTools more Depender.request function to use
* HTTP "get" rather than "post".
*
* When sending requests for files via the depender, I was finding that Safari
* wasn't getting and re-evaluating them the second time I visited the page.
* This was because an etag was sent with each script.
*
* Safari responds to etags properly and adds "If-None-Match" and
* "If-Modified-Since" headers to another request for the same file. This makes
* Apache respond with a 412 status (Precondition Failed) as it should do for
* "post" requests (according to RFC 2616).
*
* Unfortunately Safari doesn't then deal with the 412 as it does with a 304
* (Not Modified). It doesn't grab what it has in the cache and put it in the
* response, it gives you nothing.
*
* For "get" requests, Apache has to respond with a 304, or 200 or whatever, but
* not 412. So we change the request method so we don't have to deal with 412.
*/
Depender.request = function(url, callback){
    new Request.JSON({
        url: url,
        secure: false,
        onSuccess: callback,
        method:'get'
    }).send();
};

24,935 thoughts on “MooTools Depender, Safari, etags and 412 Precondition Failed

  1. Hey There. I discovered your weblog the usage of msn. This
    is an extremely well written article. I’ll make sure to
    bookmark it and return to learn extra of your helpful information. Thank you
    for the post. I will definitely comeback.

  2. Hello every one, here every one is sharing such experience, thus
    it’s nice to read this weblog, and I used to visit this
    webpage all the time.

  3. медицинский центр стоматология цены медицинский центр стоматология цены .

  4. Asking questions are actually good thing if you are not understanding something
    entirely, but this piece of writing offers pleasant understanding yet.

  5. Предлагаем услуги профессиональных инженеров офицальной мастерской. Еслли вы искали ремонт кофемашин philips можете посмотреть на сайте: ремонт кофемашин philips адреса Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом