代码之家  ›  专栏  ›  技术社区  ›  Emac

Python Sendgrid将抄送添加到电子邮件

  •  0
  • Emac  · 技术社区  · 6 年前

    这是我的基本代码:

    sg = sendgrid.SendGridAPIClient(apikey='*****')
    from_email = Email(sender_address, sender_name)
    to_email = Email(email_address)
    subject = subject
    content = Content("text/plain", email_message)
    mail = Mail(from_email, subject, to_email, content)
    response = sg.client.mail.send.post(request_body=mail.get())
    

    我如何修改它,以便它将抄送某人的电子邮件?

    3 回复  |  直到 6 年前
        1
  •  1
  •   Santiago Bruno    6 年前

    我一直在看代码: https://github.com/sendgrid/sendgrid-python/blob/master/examples/mail/mail.py

    看起来您可以通过向邮件添加个性化设置来完成此操作,例如:

    cc_email = Email(cc_address)
    p = Personalization()
    p.add_cc(cc_email)
    mail.add_personalization(p)
    
        2
  •  1
  •   Emac    6 年前

    我解决了。圣地亚哥的回答让我基本上明白了,但我需要做的是:

    sg = sendgrid.SendGridAPIClient(apikey='****')
    from_email = Email(sender_address, sender_name)
    to_email = Email(to_email)
    cc_email = Email(cc_email)
    p = Personalization()
    p.add_to(to_email)
    p.add_cc(cc_email)
    subject = subject
    content = Content("text/plain", email_message)
    mail = Mail(from_email, subject, to_email, content)
    mail.add_personalization(p)
    response = sg.client.mail.send.post(request_body=mail.get())
    

    如果您不包括p.add_to(to_email),它会拒绝它,因为个性化对象中没有“to email”。另外,如果你没有在邮件对象中包含“to_email”,它会拒绝它,因为它正在寻找这个参数,所以你必须有点多余,并定义它两次。

        3
  •  0
  •   Ashutosh Chapagain    6 年前

    here 如果您将另一封电子邮件添加到“收件人电子邮件”,则可以抄送到电子邮件。