如何修复HTTP错误401:使用sendgrid发送电子邮件时未经授权?

2024-04-25 01:04:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我想写一个在使用sendgrid时向用户发送电子邮件的应用程序,我已经转到sendgrid并遵循了包括安装sendgrid和设置环境变量在内的所有说明。在

我尝试过将环境变量放入路径中,但仍然显示错误

我也尝试过把它放进代码中,但还是失败了,因为同样的错误

这是我的发送代码-邮件.py公司名称:

import os
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail

message = Mail(
    from_email='from_email@example.com',
    to_emails='to@example.com',
    subject='Sending with Twilio SendGrid is Fun',
    html_content='<strong>and easy to do anywhere, even with 
Python</strong>')
try:
    sg = SendGridAPIClient(os.environ.get('SG.97- 
 h52MJSXK4C7_FIl5yzw.q3GsOa4P_AO1pKvUcOzQg6XzuRXEY3mzD-Ci5eN2I2E'))
    response = sg.send(message)
    print(response.status_code)
    print(response.body)
    print(response.headers)
except Exception as e:
    print(e
    )

我创建了一个名为Mail的文件夹,并在其中创建了一个名为send的文件_邮件.py在

我希望发送电子邮件,但它抛出一个HTTP错误401:Unauthorized


Tags: to代码frompyimportos电子邮件response
1条回答
网友
1楼 · 发布于 2024-04-25 01:04:55

您正在尝试获取名称为API密钥的环境变量。这很可能返回None,这会使您的身份验证失败。你也可以考虑重新生成你的API密钥,你现在已经在互联网上公开了。在

尝试将SendGridAPIClient(os.environ.get('SG.97- h52MJSXK4C7_FIl5yzw.q3GsOa4P_AO1pKvUcOzQg6XzuRXEY3mzD-Ci5eN2I2E'))替换为SendGridAPIClient('SG.97- h52MJSXK4C7_FIl5yzw.q3GsOa4P_AO1pKvUcOzQg6XzuRXEY3mzD-Ci5eN2I2E')。在

相关问题 更多 >