¿Procesar imágenes con URL no pública en el cuerpo del mensaje de Gmail?

9

Con el cambio reciente de Gmail para servir todas las imágenes a través de un proxy, parece que ya no es posible incrustar una imagen que se sirve a través de una localhostURL. Por ejemplo, como desarrollador, solía enviarme un correo electrónico con contenido como:

<img src="http://localhost/trackthismessage?readby=xxxx" />

y, al decirle a Gmail que muestre imágenes, mi máquina de desarrollo local la publicaría.

Ahora, con el proxy en el medio, parece que esto ya no es posible. ¿Esta funcionalidad ahora acaba de desaparecer o hay una solución?

andrew.w.lane
fuente
Dudo mucho que haya una solución alternativa, a menos que gmail vuelva a utilizar esta función. Probablemente necesite hacer que su imagen esté disponible en Internet para que gmail pueda almacenarla en caché.
Munim

Respuestas:

5

En realidad, hay una solución alternativa para el desarrollo. Simplemente ejecute esto en su consola JS y aparecerán las imágenes. Encontré esto en Stack Overflow. Asegúrese de elegir primero "Mostrar imágenes" en el mensaje

(function(){ while(img = document.evaluate('//img[contains(@src, \'googleusercontent.com\')]', document,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue){ var src = img.attributes.src.value; src = src.substr(src.indexOf('#')+1); img.attributes.src.value = src; } })();

También puede crear un marcador para mayor manejabilidad, prefijando lo anterior con javascript:

javascript:(function(){ while(img = document.evaluate('//img[contains(@src, \'googleusercontent.com\')]', document,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue){ var src = img.attributes.src.value; src = src.substr(src.indexOf('#')+1); img.attributes.src.value = src; } })();
Peter
fuente
0

Como ya mencionó en la pregunta y también en Munim en los comentarios, es muy poco probable que esto sea posible en el futuro cercano.


fuente