Domanda

Sto cercando di costruire una proroga per Firefox per ottenere una pagina da un server Web e metterlo nella cache del browser, in modo che quando l'utente chiede per quel link, sarà recuperato direttamente dalla cache, invece di chiedere al server web originale.

Ma io sto avendo problemi con alcune pagine che mettono intestazioni per evitare di cacheability, come "Cache-control: must-revalidate", "Cache-control: no-store", "Cache-Control: no-cache" e "Pragma: no-cache".

Sto cercando di sovrascrivere le intestazioni con setResponseHeader di nsIHttpChannel quando la pagina arriva. Ma le intestazioni non vengono modificate nella voce della cache corrispondente. Allora provo setMetaDataElement di nsICacheEntryDescriptor per cambiare la chiave di metadati "risposta-head". Anche se i dati sono cambiati, la pagina ancora viene recuperato dal server web originale.

Qualcuno sa come superare questo problema e rendere le pagine essere caricati dalla cache di Firefox? È possibile?

Grazie in anticipo.

È stato utile?

Soluzione

Stavo usando XMLHttpRequest per recuperare la pagina, e il problema è stato che ho cambiato le intestazioni di risposta nella funzione "onreadystatechange" ho fatto.

in alternanza, ho usato l'osservatore a "http-on-Esaminiamo-risposta", e alterato le intestazioni di risposta nel metodo "osservare". Il cambiamento è ora conservato dalla cache.

Ho l'intuizione, cercando in BetterCache il codice di estensione per Firefox.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top