Indice della documentazione

Cookie solution ›

Cache ed ottimizzazione del caricamento della iubenda Cookie Solution


Se vuoi utilizzare una specifica versione della iubenda Cookie Solution, è sufficiente inserire il seguente link al posto di quello richiamato normalmente nel codice della Cookie Solution: http://cdn.iubenda.com/cookie_solution/versions/0.11.36.4/iubenda_cs.js.

Il valore “0.11.36.4” va sostituito col numero relativo alla versione da utilizzare. Le versioni disponibili sono quelle rilasciate nei canali Current e Stable a partire dalla versione 0.11.36.4 in poi (consulta il changelog completo per una lista di tutte le versioni della Cookie Solution rilasciate).

A differenza del link di base alla nostra risorsa, il link sopra menzionato ha una configurazione di cache molto estesa, in quanto punta ad una versione specifica che non necessiterà di modifiche nel tempo.

Più in dettaglio, applicando la modifica sopra descritta al codice della Cookie Solution, la risorsa iubenda_cs.js a sua volta caricherà un nuovo file contenente la versione desiderata. Si tratta di una best practice – adottata anche da Google per il caricamento di Google Analytics – dettata dall’esigenza di garantire il miglior compromesso fra possibilità di aggiornamento della Cookie Solution e velocità di caricamento/cacheing. Il file iubenda_cs.js è infatti un file con cache breve di pochi byte, che a sua volta richiama la vera e propria Cookie Solution, il cui file ha invece una cache molto estesa.

In alternativa, è possibile bypassare iubenda_cs.js e caricare direttamente il file con l’hash della versione. In questo modo è possibile:

  • Eliminare un passaggio intermedio, con un guadagno – a dire il vero molto ridotto – in termini di velocità di caricamento (alcuni millesimi di secondo)
  • Accedere ad una versione del file con una cache molto lunga

Caricamento diretto della Cookie Solution

Se l’analisi effettuata da Google PageSpeed ti ha mostrato un suggerimento come questo, allora sei nel posto giusto per risolvere il tuo problema:

Sfrutta il caching del browser: Se viene impostata una data di scadenza o un’età massima nelle intestazioni HTTP per le risorse statiche, il browser carica le risorse precedentemente scaricate dal disco locale invece che dalla rete.

Per bypassare iubenda_cs.js, per prima cosa è necessario recuperare l’hash della versione desiderata:

  • Analogamente a quanto visto prima, nel seguente URL sostituisci “0.11.36.4” con la versione della Cookie Solution che desideri attivare e visita la relativa pagina: http://cdn.iubenda.com/cookie_solution/versions/0.11.36.4/iubenda_cs.js. Nota: se desideri attivare l’ultima versione disponibile, visita direttamente questo indirizzo: http://cdn.iubenda.com/cookie_solution/iubenda_cs.js
  • Copia il contenuto di e=”XyZ”, che è appunto l’hash della versione. Ad esempio, nel caso della versione “0.11.36.4” visitando la pagina http://cdn.iubenda.com/cookie_solution/versions/0.11.36.4/iubenda_cs.js avremo e=”12c7b88758469646a58cf26a33ae0d27″; è necessario dunque copiare il contenuto 12c7b88758469646a58cf26a33ae0d27
  • Componi quindi il nuovo URL con l’hash della versione seguendo questa struttura: http://cdn.iubenda.com/cookie_solution/iubenda_cs/core-12c7b88758469646a58cf26a33ae0d27.js
  • Sostituisci il link di cui sopra al posto di quello richiamato normalmente nel codice della Cookie Solution

Importante: se scegli di bloccare la iubenda Cookie Solution ad una specifica versione, ti consigliamo di aggiornarla manualmente in modo periodico, così da beneficiare dei nostri continui aggiornamenti.

Inclusione diretta in pagina dell’attivatore

Si ricorda che l’inclusione dell’attivatore all’interno della pagina è un’operazione che può essere effettuata solo se si sta utilizzando la versione safemode della nostra cookie solution. Per un’introduzione al safemode, visita questo link.

È possibile includere direttamente in pagina (inline) la parte di codice che si occupa dell’attivazione degli script; definiamo questo codice attivatore inline. Tramite l’attivatore inline gli script potranno essere attivati anche nel caso in cui la risorsa principale iubenda_cs.js risulti essere genericamente non disponibile o in errore.

Nota

L’attivatore inline garantisce unicamente l’attivazione degli script, potendo anche assumere il consenso fornito (si veda l’opzione seguente forceSafeActivation); non è in grado di mostrare il banner, la cookie policy e gestire la raccolta del consenso fornito. Va dunque inteso unicamente come ulteriore misura precauzionale nel caso di errori, e non sostituisce in nessun modo il codice principale della iubenda Cookie Solution (per ulteriori informazioni su come configurare correttamente la Cookie Solution, consulta questo articolo). Da notare che l’attivatore inline è in grado di invocare la sola callback onActivationDone, le altre callback saranno invece ignorate.

Sono disponibili due ulteriori opzioni di configurazione specifiche per l’attivatore inline:

safeTimeout: (millisecondi, default 5000) – Il tempo che l’attivatore inline attende prima di entrare in azione (ed eventualmente prima di attivare gli script; si veda anche l’opzione seguente)

forceSafeActivation: (boolean, default false) – Se true gli script vengono attivati indipendentemente dal consenso fornito. Se false l’attivatore inline attiva gli script solo se il consenso è stato fornito (e memorizzato nel cookie di preferenza nel dominio della pagina ospite)

L’attivatore inline è disponibile a questo URL:

Il contenuto di questo file va incluso in pagina DOPO le configurazioni iniziali e PRIMA del codice che carica la risorsa iubenda_cs.js.

Esempio

<head>
...

<script type="text/javascript">
    var _iub = _iub || [];
  _iub.csConfiguration = {
    cookiePolicyId: XxX,
    siteId: YyY,
    // other config options...
  };
_iub.csConfiguration.safeTimeout = 2000; // Custom option for Safemode
_iub.csConfiguration.forceSafeActivation = false; // Custom option for Safemode
</script>

<script type="text/javascript">
//<![CDATA[
  //copy content from cdn.iubenda.com/cookie_solution/safemode/safe.js and paste here.
//]]>
</script>

<script type="text/javascript" src="//cdn.iubenda.com/cookie_solution/safemode/iubenda_cs.js" charset="UTF-8" async></script>

...
</head>

Nota

Il codice dell’attivatore è parte integrate della iubenda Cookie Solution e come tale può essere modificato al fine di introdurre nuove feature, miglioramenti e bugfix. I rilasci di nuove versioni della iubenda Cookie Solution che comportano anche la modifica dell’attivatore inline sono contrassegnati in changelog con il tag [safe.js updated]. Al fine di facilitare il controllo della versione dell’attivatore integrato nella propria pagina, è disponibile la variabile _iub.csSafeActivatorVersion che riporta la versione di iubenda_cs.js dalla quale l’attivatore è stato estratto.


Hai ancora domande?

Visita il nostro forum di supporto Scrivici via email