springboot使用sendGird发送邮箱
我觉得我们了解一项技术首先要了解这项技术的背景,虽然这对我们的编程技术影响不大,但人生并不只是追求效率,也要追求品质

sendGird介绍
SendGrid 是一个电子邮件服务平台,可以帮助市场营销人员跟踪他们的电子邮件统计数据。致力于帮助公司管理事务性邮件,包括航运通知、简报和注册确认等。
SendGrid 发端于 API 经济,其电子邮件平台是数字客户通信的引力中心。2009年,三位创始人希望为用户带来更好的发送电子邮件的方式,于是创建了首个基于云计算的电子邮件通信平台。从那时起,SendGrid 就开始提供易于使用的 API 和可扩展的电子邮件服务。随着公司的客户群的多样化, SendGrid 还开发了广泛的电子邮件营销产品,用于强化营销人员轻松发送促销信息的能力,最近推出的专家服务(Expert Services)旨在帮助所有客户能够通过电子邮件建立更有效地沟通。
——来源:306百科
Sendgrid(https://sendgrid.com/),云邮件管理公司,是一个帮助企业用户管理、发送电子邮件的平台,该平台能够为用户电子邮件服务提供了安全可靠、可扩展的基础架构。SendGrid帮助企业用户处理邮件订阅、管理和反馈等事宜。同时SendGrid为用户提供分析服务,为用户提供关于电子邮件的跟踪请求、响应、垃圾邮件报告、无效电子邮件反馈、点击统计以及退订等诸多管理服务。
我们为什么要用sendGird
其实java中集成了发送邮件的工具(org.springframework.mail),虽然操作毕竟简单但是有很多局限性,比如无法发送附件,只能配单独的邮箱(smtp只能配一个)以至于发送邮箱只能用一种邮箱,所以导致qq邮箱无法给163发送邮件的局限性(举个例子)
而sendGird相当于一个代理商,我们把邮件发送到sendGird,让他来代替我们去给用户发送邮箱。
废话少说,上代码
springboot使用sendGird
首先我们在使用sendGird之前要在sendGird的官网申请apiKey和fromEmail(这个东西我没弄过,找公司相关人员要的所以我也不知道具体在哪弄,sendGird又是外国的,进官网又慢,我也懒得看了),官网地址:SendGrid
我们最好是在配置文件中加入apiKey和fromEmail(包不要导错了哦)
package com.rz.mobile.email;import com.sendgrid.Method;
import com.sendgrid.Request;
import com.sendgrid.Response;
import com.sendgrid.SendGrid;
import com.sendgrid.helpers.mail.Mail;
import com.sendgrid.helpers.mail.objects.Content;
import com.sendgrid.helpers.mail.objects.Email;
import com.sendgrid.helpers.mail.objects.Personalization;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import java.io.IOException;@Component
public class SendEmail{@Value("${spring.mail.username}")private String sendMailer;@Value("${twilio.apikey}")private String apikey;@Value("${twilio.fromemail}")private String fromEmail;/**** @param emailMessage 邮箱内容* @param setTo 目标邮箱*/public void sendSimpleMail(String emailMessage,String setTo){Email from = new Email(fromEmail);Mail mail = new Mail();Personalization personalization = new Personalization();/*如果发送多人的话可多次创建Email并add到Personalization*/Email to = new Email(setTo);personalization.addTo(to);mail.addPersonalization(personalization);//邮件支持html格式,默认为text,text/htmlString type = "text/plain";Content content = new Content(type,emailMessage);mail.setFrom(from);//发送邮箱mail.setSubject("客餐预定审批邮件");//主题mail.addContent(content);//内容SendGrid sg = new SendGrid(apikey);Request request = new Request();try {request.setMethod(Method.POST);request.setEndpoint("mail/send");request.setBody(mail.build());Response response = sg.api(request);}catch (IOException e){e.printStackTrace();}}
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
