SendCloud SDK For Java
- 支持 邮箱API v2 普通发送和模板发送
- 支持批量发送(模板批量变量替换)
- 支持添加附件发送
- 支持使用 HTTP 代理发送
<dependency>
<groupId>io.jstack</groupId>
<artifactId>sendcloud4j</artifactId>
<version>0.0.5</version>
<dependency>
compile 'io.jstack:sendcloud4j:0.0.5'
-
初始化 API,通过 SendCloud 后台获取 apiUser 和 apiKey,创建
SendCloud
实例private String apiUser = "testApiUser"; private String apiKey = "testApiKey"; SendCloud webapi = SendCloud.createWebApi(apiUser, apiKey);
-
创建邮件实例,支持普通邮件和模板邮件。
普通邮件,邮件内容支持 HTML 或文本:
Email email = Email.general() .from("[email protected]") .fromName("JStack Support") .html("<b>Hello World!</b>") // or .plain() .subject("mail title") .attachment(new File("att.png")) // 添加附件 (File or byte[]) .to("[email protected]");
模块邮件,使用
Substitution.sub()
替换变量值:Email email = Email.template("template_order_customer") .from("[email protected]") .fromName("JStack Support") .substitutionVars(Substitution.sub() // 模板变量替换 .set("product", "iPhone 6S") .set("name", "denger")) .attachment(new File("att.png")) // 添加附件 (File or byte[]) .to("[email protected]");
-
执行发送
Result result = webapi.mail().send(email);
-
处理发送结果
result.isSuccess(); //API 请求是否成功 result.getStatusCode(); //API 返回码 result.getMessage(); //API 返回码的中文解释
在发送邮件时通过 viaProxy
方法指定代码 ip 和端口,如下所示:
Result result = webapi.mail().viaProxy("example_ip:port").send(email);
如果你有新需求或问题欢迎提 issues 或 fork :)