Gmail API Oauth2 从不同地址发送

Gmail API Oauth2 Send from different address

我可以使用 Python 和 google 库(googleapiclientgoogle_auth_oauthlib.flowgoogle.auth.transport.requests)发送电子邮件。我正在尝试获取备用 "from" 或 "reply-to" 地址,但它不起作用。我创建消息的代码是这样的:

# Returns an e-mail message suitable for submission through the gmail api.
def create_message(sender, to, subject, message_text):
    message = MIMEMultipart()
    message['to'] = to
    #message['from'] = sender
    message['from'] = 'derp@nowhere.com'
    message['subject'] = subject
    message.attach(MIMEText(message_text, 'html'))
    return {'raw': base64.urlsafe_b64encode(message.as_string().encode()).decode()}

如您所见,我调整了 messagefrom 属性。发送此邮件时,它来自 gmail 帐户所有者,而不是 "derp"。如何让消息来自不同的地址?

添加电子邮件地址作为 "Send Mail As" 帐户:https://mail.google.com/mail/u/2/#settings/accounts。其他帐户有必要验证他可以控制该电子邮件地址。

似乎无法 "spoof" 在没有此验证过程的情况下使用 gmail oauth 发送电子邮件,但如果您使用已弃用的 "less secure apps",则仍然可以。