GAE에서 현재 전자 메일을 보내면 Content-Transfer-Encoding이 인용 인쇄 가능한 전자 메일을 받게됩니다. 이걸 base64로 설정하려고합니다. quoted-printable은 이메일을받을 때 이미지가 표시되지 않는 것을 제외하고는 찾기가 가능합니다. 지금 내 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 전자 메일을 보낼 수 있습니까? 나는 한계가 있다는 것을 분명히하기 위해 다음의 두 가지 버그/기능 요청을 읽었다.
http://code.google.com/p/googleappengine/issues/detail?id=198 http://code.google.com/p/googleappengine/issues/detail?id=965
이메일 클라이언트에서받은 이메일의 소스를 확인 했습니까? AFAIK, 대부분의 이메일 클라이언트는 HTML 이미지를 지원하지 않습니다. –
예 출처를 확인했는데 어디에서나 표시되는 3D를 제외하고는 모든 것이 잘 보입니다. 나는 대부분의 이메일 클라이언트가 HTML 임베디드 이미지를 지원하지 않을 것이라는 것을 깨닫지 못했다 .... –
= 3D는 인용 된 인쇄 가능한 인코딩에서 나온 것이므로 괜찮습니다. HTML 임베디드 이미지가 다양한 이메일 클라이언트에서 잘 지원되지 않는 것 같습니다 : http://www.campaignmonitor.com/blog/post/1761/embedding-images-in-email/ –