2012-03-22 9 views
1

現在GAE内から電子メールを送信すると、Content-Transfer-Encoding with quoted-printableのメールが送信されます。私はこれをbase64に設定しようとしています。私がメールを受け取ったときに画像が表示されないことを除いて、quoted-printableはfindになります。今のように私のhtmlは次のようになります:GAEで画像を含むHTMLメールを送信

String base64StringImg = Base64.encode(my byte array); 

StringBuilder htmlBody = new StringBuilder(); 
htmlBody.append("<html>"); 
htmlBody.append("<body>"); 
htmlBody.append("<img src='data:image/png;base64,"); 
htmlBody.append(base64StringImg); 
htmlBody.append("'/>"); 
htmlBody.append("<br/><br/>"); 
htmlBody.append("Hello " + name); 
htmlBody.append("</body>"); 
htmlBody.append("</html>"); 


MimeMessage message = new MimeMessage(session); 
message.setFrom(new InternetAddress(fromUser)); 
message.addRecipient(Message.RecipientType.TO, new InternetAddress(recipient)); 
message.setSubject(subject); 
Multipart mp = new MimeMultipart(); 

BodyPart htmlPart = new MimeBodyPart(); 
htmlPart.setContent(htmlBody.toString(), "text/html; charset=UTF-8"); 
mp.addBodyPart(htmlPart); 
message.setContent(mp); 
Transport.send(message); 

GAEで画像を含むHTML電子メールを送信するにはどうすればよいですか?私は制限があることを明確にする次の2つのバグ/機能要求を読んだ。

http://code.google.com/p/googleappengine/issues/detail?id=198 http://code.google.com/p/googleappengine/issues/detail?id=965

+0

メールクライアントで受信したメールの送信元を確認しましたか? AFAIK、ほとんどの電子メールクライアントはHTML埋め込み画像をサポートしていません。 –

+0

はいソースを確認したところ、どこにでも現れる= 3Dを除いてすべてが正常に見えます。私は、ほとんどの電子メールクライアントがHTML埋め込み画像をサポートしていないことを理解していませんでした.... –

+0

= 3Dはquoted-printableエンコーディングのものです。 HTML埋め込み画像はさまざまな電子メールクライアントでうまくサポートされていないようです:http://www.campaignmonitor.com/blog/post/1761/embedding-images-in-email/ –

答えて

0

HTML埋め込み画像は不十分電子メールクライアントでサポートされているように見える:http://www.campaignmonitor.com/blog/post/1761/embedding-images-in-email/

は何ですかサポートされている画像はメールに添付された画像ですhttp://www.campaignmonitor.com/blog/post/1759/embedding-images-revisited/

issueへのリンクに記載されているように、2番目のオプションはGAEではサポートされていません。あなたが試みることができるのは、2番目のリンクに表示されたメールコンテンツを手作業で作成することです。

関連する問題