web-dev-qa-db-ja.com

Gmailメッセージの本文に非公開URLを含む画像をレンダリングしますか?

Gmailが最近プロキシを介してすべての画像を提供するように変更されたため、localhost URLを介して提供される画像を埋め込むことはできなくなったようです。たとえば、開発者として、私は次のような内容のメールを自分に送信できました。

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

そして、Gmailに画像を表示するように指示すると、画像は私のローカル開発マシンによって提供されます。

さて、中間にプロキシがあると、これはもはや不可能のようです。この機能はなくなったのですか、それとも回避策はありますか?

9
andrew.w.lane

実際には、開発のための回避策があります。 JSコンソールでこれを実行すると、画像が表示されます。 Stack Overflowでこれを見つけました。最初にメッセージで「画像を表示」を選択してください

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

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

質問自体であなたが既に述べたように、またコメントでムニムによっても言及されているように、近い将来、いつでもこの可能性はほとんどありません。

0
user19533