1

私は、パブリックアクセスポイントまたは「閉じた」アクセスポイント(インターネットを見ることができない)から電子メールを読む可能性のある受信者に電子メールを送信するシステムを開発しています。HTML形式で送信される私のメールには、画像が埋め込まれている場合があります。画像は事前定義されており、既知の場所にあります。当然、(パブリック)インターネットから読み取られた電子メールは、(プライベート)クローズドネットワークでホストされている画像をロードできません。閉じたネットワークから読み取った電子メールは、インターネットから画像をロードできません

今のところ、電子メールの生成中に、受信者の電子メールアドレスから、をimg srcパブリックパスにするかプライベートパスにするかを決定しています。メールクライアントに「画像へのこのパブリックパスを試してみてください。このプライベートパスへのフェイルオーバーが読み込まれない場合は」と伝えることができるネイティブHTMLテクニックを見つけたいと思います。私の理解では、電子メールクライアントはほとんどの場合JavaScriptを取り除くことが期待されているため、ECMAはこのソリューションの一部にはなりません。悲しいことに。

試行1

src画像へのパブリックパスに設定し、background-imagestyle属性を画像へのプライベートパスに設定してみました。

<img src="path/to/public/my_image.jpg" style="background-image:url('path/to/private/my_image.jpg');" ..etc.. />

これはブラウザではうまく機能しますが(特に高さ/幅の属性が設定されている場合)、Outlook(2007)はをサポートしていませんbackground-image。だから、喜びはありません。

試行2

table画像を使ってを作成してみましたbackground

<table background="path/to/private/my_image.jpg">
   <tr>
      <td>
         <img src="path/to/public/my_image.jpg" />
      </td>
   </tr>
</table>

Outlookもそのために行きませんでした。

試行3

「動作するのに十分クレイジーかもしれない」という精神で、私はsrc画像に2つの属性を提供しようとしました。

<img src="path/to/public/my_image.jpg" src="path/to/private/my_image.jpg" ..etc.. />

それはどこでも機能しませんでした。最初のものだけがsrc画像の読み込みに慣れます。

4

2 に答える 2

0

ロジックがサーバー上で作成されている場合は、画像を直接生成するのではなく、正しい画像を生成/提供するスクリプトにリンクする方がよいと思いますか?

何かのようなもの:

<img src="http://www.example.com/path/to/script/image.php?email=info@example.com&amp;name=example-image-1" />

image.php次に、指定されたパラメーターに基づいていくつかのロジックを作成します。これらは、受信者の電子メール (アクセス権の詳細が記載されている可能性があります) や、画像の名前 (この位置にどの画像を提供するかがわかるようにするため) である可能性があります。

image.php次に、電子メール クライアントが画像を正しくレンダリングできるように、画像の正しい MIME タイプとして機能する必要があります。

これは、電子メール自体でハックを使用しようとするよりもはるかに有利です.

お役に立てれば?

マイキー。

PS - HTML メールで絶対 URL を提供することを忘れないでください。相対イメージは機能しません。

于 2013-03-11T14:44:09.333 に答える
0

画像を添付ファイルとして埋め込まないのはなぜですか? img タグの src 属性を「cid:xyz」として指定できます。「xyz」は、画像添付ファイルの「Content-id」MIME 属性の場合です。

于 2013-03-11T14:50:51.990 に答える