A 304 è una risposta che è il risultato di una richiesta. È una richiesta, che include informazioni sull'ultima richiesta effettuata e ha ottenuto un 200, da cui il server risponde, 200 OK
e qui è il nuovo materiale, oppure 304 Not Modified
e termina in quel momento (con alcune intestazioni HTTP per buona misura) .
Il fatto è, tuttavia, con la corretta configurazione delle risposte, il browser non può nemmeno effettuare la richiesta. Non conosco le intestazioni in cima alla mia testa, quindi ho fatto una richiesta CDN di google di jquery 1.7.2 semplicemente navigando attraverso il browser.
HTTP/1.1 304 Not Modified
Date: Wed, 11 Apr 2012 15:01:19 GMT
Expires: Thu, 11 Apr 2013 15:01:19 GMT
Age: 122140
Server: GFE/2.0
Quindi, è possibile vedere che è impostato per scadere dopo 1 anno. Ho provato a utilizzarlo come sorgente di uno script in una pagina html/pagina web html locale e, usando Fiddler2, potevo vedere che nessuna richiesta era stata fatta. Ora se navigo di nuovo nel mio browser, riceverò la stessa richiesta, ma non nel mio editor.
Privacy, non sono sicuro che ci sia un problema. Se succede qualcosa al CDN, ovviamente, potrebbero esserci dei problemi, e naturalmente potrebbero esserci degli attacchi man in the middle, ecc., Ma se questo è il tuo problema, dovresti comunque usare HTTPS. Anche i CDN forniscono generalmente anche HTTPS.
Il più grande svantaggio di fare affidamento su un CDN è che a causa di errori di rete, i tuoi clienti potrebbero non avere accesso al CDN. Quindi è sempre bene fornire un backup.
Ecco un esempio:
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
if (typeof jQuery == 'undefined') {
document.write(unescape('%3Cscript src="/local/path/to/jQuery/jquery.1.7.1.min.js" type="text/javascript"%3E%3C/script%3E'));
}
</script>
Grazie per una risposta così perspicace e per il frammento di backup di script come bene. – puddletown
Da nessuna parte questo si rivolge al fatto semplice e importante al giorno d'oggi che quando lo script è DL'd Google ottiene tutte le informazioni sul tuo cliente e tu diventi ancora un altro strumento per Google per profilare le persone che usano internet. –
Um, non proprio, @LuisMachuca. Generalmente, questi script vengono memorizzati nella cache per un anno intero * senza richieste aggiuntive *. L'unica volta che Google apprenderebbe qualcosa su di te o sul sito web che hai visitato (tramite Referrer HTTP) sarebbe la prima volta che alcuni siti Web richiedono quella particolare versione di jQuery senza che sia presente nella cache del browser. Certo, passare alcune informazioni a qualsiasi CDN è inevitabile, quindi il loro uso potrebbe non essere consigliabile in alcune situazioni. – JayC