Veo varias preguntas sobre cómo borrar la memoria caché en Chrome en general, pero esto es específico de mi extensión, que usa una secuencia de comandos en segundo plano. Tengo una extensión que recupera datos Json de un script en segundo plano:
//In the content script chrome.runtime.sendMessage({ query: 'getList' }, function (result) { //Uses list data });Dentro del archivo js de fondo, recupero datos de una llamada JQuery ajax:
//In a background script chrome.runtime.onMessage.addListener( function (request, sender, sendResponse) { $.get('http://example.com/data.txt', function (result) { sendResponse(result); }); });He actualizado el contexto del archivo data.txt en mi servidor. Sin embargo, la extensión de Chrome sigue utilizando los datos antiguos. Tengo exactamente el mismo código ejecutándose en un complemento de Firefox, y en Firefox veo los nuevos datos inmediatamente cuando actualizo el archivo .txt.
No sé cómo saber si el problema real es que la llamada sendMessage() solo usa un valor en caché en lugar de ir a mi secuencia de comandos en segundo plano, o si mi secuencia de comandos en segundo plano solo devuelve un valor en caché en lugar de recuperar la actualización de mi servidor
Actualicé el archivo .txt hace más de un día, por lo que no es solo un problema de almacenamiento en caché a corto plazo. ¿Qué puedo hacer para obligar a la extensión de Chrome a actualizar los datos provenientes del script de fondo? No parece ser un problema local; incluso desinstalar y volver a instalar el script no soluciona el problema; no es que se esté almacenando en caché en mi caché local de Chrome.
Si visito http://example.com/data.txt en Chrome (o cualquier navegador), veo el archivo actualizado.
Supongo que si implementara un nuevo paquete en el panel de desarrollo de Chrome, se borraría. Pero la razón principal por la que tengo este script en segundo plano y la llamada JQuery es para poder actualizar fácilmente estos datos sin tener que volver a implementar la extensión cada vez que cambia.
¿Hay algo que se pueda hacer desde Chrome Developer Dashboard para forzar la actualización?