2012-03-30 13 views
6

Esiste un modo per rimuovere i parametri di busting della cache dell'URL per le risorse CDN esterne?Evita i parametri di busting della cache dell'URL con RequireJS per CDN

Desidero avere il busting della cache per i file della mia libreria, ma non per i file esterni di jquery cdn. In questo momento sto usando: requirejs.config({ urlArgs : "v1.1"}); per avere il busting della cache.

Qualche suggerimento su come farlo?

Grazie

risposta

0

Questo è certamente il più antico domanda ho risposto finora!

Ho creato questo violino per utilizzare RequireJS contexts, ma non sembra funzionare.

I contesti caricano i moduli dai diversi percorsi ok, ma entrambe le chiamate a require() utilizzano il parametro cache bust (urlArgs).

Quindi la mia conclusione sarebbe che non si può fare ciò che si vuole fare immediatamente.

http://jsfiddle.net/FXSSf/5/

// Fiddle to try and have two RequireJS contexts, one without cache bust for CDN and one with cache bust for 'our' files 
// See http://requirejs.org/docs/api.html#multiversion 

// ensure that $ is invalid to begin with 
var $ = null; 

var cdnRequire = require.config({ 
    paths: { 
     "jquery": "http://code.jquery.com/jquery-1.9.1" 
    }, 
    urlArgs: "" 
}); 

var ourRequire = require.config({ 
    baseUrl: "https://gist.github.com/gitgrimbo/5130393/raw/b9402d4dfb00ff0ad3211f30681bb6d0411e4295", 
    urlArgs: "ourRequire-" + new Date().getTime() 
}); 

// cdnRequire should *not* use cache bust parameter 
cdnRequire(["jquery"], function ($) { 
    alert($.fn.jquery); 
    // ourRequire *should* use cache bust parameter 
    ourRequire(["gistfile1"], function (myModule) { 
     alert(myModule); 
    }); 
}); 
+0

Grazie @ Paolo per la risposta. Sto ancora cercando una soluzione per questo problema. È un caso di uso comune che non riesco a credere che non venga implementato nel requirejs – valentinvieriu

Problemi correlati