Rendre des images avec une URL non publique dans le corps du message Gmail?

9

Avec la récente modification de Gmail pour diffuser toutes les images via un proxy, il semble qu'il n'est plus possible d'incorporer une image diffusée via une localhostURL. Par exemple, en tant que développeur, je pouvais m'envoyer un e-mail avec du contenu comme:

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

et, en disant à Gmail d'afficher des images, l'image serait servie par ma machine de développement locale.

Maintenant, avec le proxy au milieu, il semble que ce ne soit plus possible. Cette fonctionnalité vient-elle de disparaître ou existe-t-il une solution?

andrew.w.lane
la source
Je doute fortement qu'il y ait une solution de contournement, à moins que gmail ne revienne sur cette fonctionnalité. Vous devez probablement rendre votre image disponible sur Internet afin que gmail puisse la mettre en cache.
Munim

Réponses:

5

Il existe en fait une solution de contournement pour le développement. Exécutez simplement ceci dans votre console JS et les images apparaîtront. Trouvé sur Stack Overflow. Assurez-vous de choisir d'abord «Afficher les images» dans le message

(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; } })();

Vous pouvez également créer un signet pour une maniabilité accrue en préfixant ce qui précède avec 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
la source
0

Comme vous l'avez déjà mentionné dans la question elle-même et également dans les commentaires de Munim, il est hautement improbable que cela soit possible dans un proche avenir.


la source