【问题标题】:How to email to multiple users via x-smtpapi?如何通过 x-smtpapi 向多个用户发送电子邮件?
【发布时间】:2014-10-13 11:55:13
【问题描述】:

我正在使用 sendgrid-pythonsmtpapi-python 库。

sg = sendgrid.SendGridClient('xx', 'xxx', raise_errors=True)
message = sendgrid.Mail()
message.set_subject('yyyy')
with open("../template/s_letter.html", "r") as myfile:
    message.set_html(myfile.read())
message.set_from('xx@xx.org')
message.add_to("xx@xx.com")

header = SMTPAPIHeader()
test_emails = ['xxx@xxx.com', 'xx.xxx@xxx.com']
header.set_tos(test_emails)
message.set_headers(header.json_string())

status, msg = sg.send(message)

我正在尝试设置 x-smtpapi 标头,以便将同一封电子邮件发送给多个用户。 但是我得到了例外。

sendgrid.exceptions.SendGridClientError: (400, '{"message": "error", "errors": ["JSON in headers is valid but incompatible"]}')

知道我忽略了什么吗?

【问题讨论】:

    标签: python sendgrid


    【解决方案1】:

    SendGrid Python Library 实际上已经实现了smptpapi-python 并将方法传递给更大的库。所以,message.add_to()header.add_to()。因此,您应该需要 sendgrid-python。您可以按如下方式实现:

    sg = sendgrid.SendGridClient('xx', 'xxx', raise_errors=True)
    message = sendgrid.Mail()
    message.set_subject('yyyy')
    with open("../template/s_letter.html", "r") as myfile:
        message.set_html(myfile.read())
    message.set_from('xx@xx.org')
    test_emails = ['xxx@xxx.com', 'xx.xxx@xxx.com']
    message.set_tos(test_emails)
    
    status, msg = sg.send(message)
    

    【讨论】:

      【解决方案2】:

      这是一个很晚的回复,但我今天遇到了这个问题,经过一整天的努力,我得到了一个解决方案,如果有人遇到这个问题,我会在下面发布。

      使用消息 Instance 使用 smtpapi,如下所示:

      message.smtpapi.add_to(test_emails)

      【讨论】:

        猜你喜欢
        • 2015-02-25
        • 2016-06-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-02-21
        • 2021-02-05
        相关资源
        最近更新 更多