sendgrid html text,使用SendGrid发送电子邮件

sendgrid html text,使用SendGrid发送电子邮件使用 SendGrid 发送电子邮件发布时间 2020 03 0319 16 51 来源 51CTO 阅读 339 作者 mxy00000 栏目 云计算我们继续来看 AzureGlobal 的一些服务 这次来看下 Azure 中可以用来发邮件的服务 Azure 中其实没有明确可以用来发邮件的服务 因为微软本来就有 O365 能做这个事 但是像发送告警邮件这类的操作仍然可以直接借用 Azure 中的内置功能来实现 但是如果是

使用SendGrid发送电子邮件

发布时间:2020-03-03 19:16:51

来源:51CTO

阅读:339

作者:mxy00000

栏目:云计算

我们继续来看Azure Global的一些服务,这次来看下Azure中可以用来发邮件的服务,Azure中其实没有明确可以用来发邮件的服务,因为微软本来就有O365能做这个事,但是像发送告警邮件这类的操作仍然可以直接借用Azure中的内置功能来实现,但是如果是单独发送邮件,比如用来做系统的通知邮箱,给用户发一些邮件消息等,这类操作就没办法用Azure的服务来做了,但是Azure中其实不光提供微软自己的服务,还有成千上万的第三方厂商的服务可以使用,今天就来介绍下Azure Global的一项第三方服务SendGrid

SendGrid可以用来当做一个普通的Mail Server来用,在Azure中使用SendGrid也非常简单,今天就来演示下在Azure中创建SendGrid账户,并用Python来发邮件的操作

首先第一步,来看SendGrid的创建

直接在Azure Global中搜索SendGrid,填写一些基本的信息就可以创建SendGrid账号了,注意这里的Pricing Tier,我们选择的是Free,Free级别可以每个月免费发送25000封邮件

bf4daed9a1ace1e340eb2aea57b10c85.png

创建的过程很快,正常1分钟之内即可,创建完成后,在overview界面,点击manage进行SendGrid的管理,

1a0dcef731d6b5f881434b9cdef54d12.png

之后即可跳转到SendGrid的管理界面,在这里我们选择右上角的Account Details,这主要是为了查看我们账号的Email Address,没有Email Address的话我们就没办法发邮件

f51300fb0e0b9bfb47e67b756eb04cc2.png

这里就能看到我们自己的邮件地址了

84fe1deb30b4a8a20e2a51621cca0041.png

接下来,我们就来看怎么发邮件

发邮件其实SendGrid提供了多种方式,最简单的就是通过Web API的方式,发送邮件前,首先我们需要先获取我们的Key,SendGrid验证用户身份不是靠之前填写的password,而是通过API的Key来判断的

所以首先需要先setup好我们的key,选择Web API

136289f580ba2e5002904a9cc4555f11.png

SendGrid提供针对多种语言的API,我们这里选择Python,之后就来演示下怎么用Python通过SendGrid发邮件

b7b5bdc77d179b132613ab42c95e7ebc.png

之后,我们直接create key来创建一个密钥

7331b055916f92adde9959cff8fec67e.png

密钥的形式是一长串的字符串,把字符串保存好

26b14c2a24f5fd6ff1a51b302df56b74.png

编写Python代码

最后,我们通过编写Python代码调用API来进行邮件的发送,首先先来安装SendGrid的python的module

module可以直接通过Pip install安装pip install sendgrid

之后我们通过把key存储到系统的环境变量里

setx SENDGRID_API_KEY “YOUR_API_KEY”

f29a6dc12f9624b28a29a455179fad7a.png

存储完成后可以直接在PowerShell里读到这个key值,这样就算完成了

7e9516715a0ca2cb760b41b4b3cad7a7.png

之后就可以编写代码来尝试邮件的发送了import os

from sendgrid import SendGridAPIClient

message = {

‘personalizations’: [

{

‘to’: [

{

’email’: ”

}

],

‘subject’: ‘Test Send Grid’

}

],

‘from’: {

’email’: ”

},

‘content’: [

{

‘type’: ‘text/html’,

‘value’: ‘This is an email from sendgrid’

}

]

}

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))

这里的邮件地址替换成需要的即可

4f07547da3df78c413bb46f79fee4733.png

发送完成后,就可以收到邮件了!总体来说还是很简单的,如果不是太复杂的需求,对于成本又有一定的考量,完全可以考虑这种方式

cee7c55f320a715a3599638cd2dce3c8.png

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/210695.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 上午7:05
下一篇 2026年3月19日 上午7:06


相关推荐

  • NOIP 2008 普及组 传球游戏「建议收藏」

    NOIP 2008 普及组 传球游戏「建议收藏」超时#include<bits/stdc++.h>usingnamespacestd;intn,m,ans;//第cnt次传球后,球在编号为x的同学手上voiddfs(intcnt,intx){ if(cnt==m){ if(x==0)ans++; return; } dfs(cnt+1,(x+1)%n); dfs(cnt+1,(x-1+n)%n); }intmain(){.

    2022年7月14日
    60
  • pycharm使用虚拟环境_pycharm配置虚拟环境

    pycharm使用虚拟环境_pycharm配置虚拟环境Pipenv,它的项目简介为PythonDevelopmentWorkflowforHumans,是Python著名的requests库作者kennethreitz写的一个包管理工具,它可以为我们的项目自动创建和管理虚拟环境并非常方便地管理Python包,现在它也已经是Python官方推荐的包管理工具。溯源起初,Python没有便利的方式来安装软件包。后来,Easy…

    2022年8月27日
    14
  • 初识JMM_一!,识J

    初识JMM_一!,识J1.什么是JMM?JMM:(JavaMemoryModel的缩写)作用:缓存一致性协议,用于定义数据读写的规则。JMM定义了线程工作内存和主内存之间的抽象关系:线程之间的共享变量存储在主内存(MainMemory)中,每个线程都有一个私有的本地内存(LocalMemory)所有的变量都存储在主内存中,每个线程还有自己的工作内存,工作内存存储在高速缓存或者寄存器中,保存了该线程使用的变量的主内存副本拷贝。线程只能直接操作工作内存中的变量,不同线程之间的变量值传递需要通过主内存来完成。

    2025年9月13日
    11
  • UpdatePanel嵌套

    UpdatePanel嵌套UpdatePanel主要是防止页面的刷新,但是项目中有时候可能要根据不同的事件更新不同的地方。 这时候UpdatePanel嵌套可以很好的解决这个问题。 在事例中主要是用时间来记录每个UpdatePanel的刷新。 前台代码: UpdatePanel嵌套

关注全栈程序员社区公众号