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. The other day, while I was at work, my cousin stole my
    iPad and tested to see if it can survive a twenty five foot drop, just so she can be a youtube sensation. My iPad is now
    destroyed and she has 83 views. I know this is totally off topic but I had to share
    it with someone!

  2. I believe this is one of the most significant information for me.
    And i’m happy reading your article. However wanna remark on few normal issues,
    The web site style is ideal, the articles is in reality excellent :
    D. Excellent process, cheers

  3. Very good blog! Do you have any suggestions
    for aspiring writers? I’m hoping to start my own blog soon but I’m a little lost on everything.
    Would you suggest starting with a free platform like WordPress or go for a paid option? There are so many choices
    out there that I’m totally confused .. Any recommendations?
    Appreciate it!

  4. Hey there I am so glad I found your blog, I really found you by error, while I
    was looking on Askjeeve for something else, Anyways I am here now and would just like to say many thanks for a incredible post and a all round exciting blog (I also love the theme/design), I don’t
    have time to browse it all at the moment but I have bookmarked it and also included your RSS feeds, so when I have time I will
    be back to read a lot more, Please do keep up the fantastic job.

  5. узнать интернет по адресу ekaterinburg-domashnij-internet003.ru интернет провайдеры в екатеринбурге по адресу дома

  6. I’m really impressed together with your writing abilities as smartly as with the layout for your weblog.
    Is that this a paid topic or did you customize it your self?
    Anyway stay up the excellent high quality writing,
    it’s rare to look a great blog like this one today..