使用Mailgun

时间:2015-11-08 20:44:06

标签: java mailgun

我正在尝试发送基于HTML的消息,其中包含使用Java中的mailgun的链接。问题是HTML代码在电子邮件客户端中显示为原样,并且不会将其呈现为HTML格式的内容。

我正在参考此网址中提供的示例 -

https://documentation.mailgun.com/user_manual.html#sending-via-api

Client client = Client.create();
       client.addFilter(new HTTPBasicAuthFilter("api",
                       "key-***"));
       WebResource webResource =
               client.resource("https://api.mailgun.net/v3/sandbox***.mailgun.org/" +                            "messages");
       FormDataMultiPart form = new FormDataMultiPart();
       form.field("from", "Admin <admin@test.com>");
       form.field("to", "User <user123@gmail.com>");
       form.field("subject", "Hello User");
       form.field("text", "Testing some Mailgun awesomness! <BR> this should be in new line &lt;BR&gt;this shoud aso be be new line");
       return webResource.type(MediaType.MULTIPART_FORM_DATA).post(ClientResponse.class, form);

任何有使用mailgun经验的人都可以帮助我。我需要发送带有可点击链接的电子邮件(锚标签)。

2 个答案:

答案 0 :(得分:2)

从api文档中尝试以下内容:

 form.field('html','<html><a href="http://stackoverflow.com">HTML version of the body</a></html>');

答案 1 :(得分:0)

我遇到了同样的问题,最后创建了一个small library来发送电子邮件轻松扔掉Mailgun。而且我也试图让发送基本的HTML电子邮件变得容易。

您的示例将转换为以下内容:

Configuration configuration = new Configuration()
    .domain("sandbox***.mailgun.org")
    .apiKey("key-***")
    .from("Admin", "admin@test.com");

MailBuilder.using(configuration)
    .to("User", "user123@gmail.com")
    .subject("Hello User")
    .text("I suggest you also include a text-only version of your content")
    .html("Testing some Mailgun awesomness! <BR> this should be in new line" + 
          " &lt;BR&gt;this shoud aso be be new line!")
    .build()
    .send();

对于简单的HTML消息,我建议您查看项目中的MailContent帮助程序类。