咱们继续来看Azure Global的一些服务,此次来看下Azure中能够用来发邮件的服务,Azure中其实没有明确能够用来发邮件的服务,由于微软原本就有O365能作这个事,可是像发送告警邮件这类的操做仍然能够直接借用Azure中的内置功能来实现,可是若是是单独发送邮件,好比用来作系统的通知邮箱,给用户发一些邮件消息等,这类操做就没办法用Azure的服务来作了,可是Azure中其实不光提供微软本身的服务,还有成千上万的第三方厂商的服务可使用,今天就来介绍下Azure Global的一项第三方服务SendGrid
html
SendGrid能够用来当作一个普通的Mail Server来用,在Azure中使用SendGrid也很是简单,今天就来演示下在Azure中建立SendGrid帐户,并用Python来发邮件的操做
python
首先第一步,来看SendGrid的建立
ide
直接在Azure Global中搜索SendGrid,填写一些基本的信息就能够建立SendGrid帐号了,注意这里的Pricing Tier,咱们选择的是Free,Free级别能够每月免费发送25000封邮件
3d
建立的过程很快,正常1分钟以内便可,建立完成后,在overview界面,点击manage进行SendGrid的管理,
code
以后便可跳转到SendGrid的管理界面,在这里咱们选择右上角的Account Details,这主要是为了查看咱们帐号的Email Address,没有Email Address的话咱们就没办法发邮件
htm
这里就能看到咱们本身的邮件地址了
blog
接下来,咱们就来看怎么发邮件
ip
发邮件其实SendGrid提供了多种方式,最简单的就是经过Web API的方式,发送邮件前,首先咱们须要先获取咱们的Key,SendGrid验证用户身份不是靠以前填写的password,而是经过API的Key来判断的ci
因此首先须要先setup好咱们的key,选择Web API
字符串
SendGrid提供针对多种语言的API,咱们这里选择Python,以后就来演示下怎么用Python经过SendGrid发邮件
以后,咱们直接create key来建立一个密钥
密钥的形式是一长串的字符串,把字符串保存好
编写Python代码
最后,咱们经过编写Python代码调用API来进行邮件的发送,首先先来安装SendGrid的python的module
module能够直接经过Pip install安装pip install sendgrid
以后咱们经过把key存储到系统的环境变量里
setx SENDGRID_API_KEY "YOUR_API_KEY"
存储完成后能够直接在PowerShell里读到这个key值,这样就算完成了
以后就能够编写代码来尝试邮件的发送了
import os from sendgrid import SendGridAPIClient message = { 'personalizations': [ { 'to': [ { 'email': 'xxx@xxx.com' } ], 'subject': 'Test Send Grid' } ], 'from': { 'email': 'azure_xxxxxs@azure.com' }, 'content': [ { 'type': 'text/html', 'value': '<html>This is an email from sendgrid</html>' } ] } try: sg = SendGridAPIClient(os.environ.get('SENDGRID_API_KEY')) response = sg.send(message) print(response.status_code) print(response.body) print(response.headers) except Exception as e: print(str(e))
这里的邮件地址替换成须要的便可
发送完成后,就能够收到邮件了!整体来讲仍是很简单的,若是不是太复杂的需求,对于成功又有必定的考量,彻底能够考虑这种方式