gpt4 book ai didi

Django:通过 Office365 发送电子邮件

转载 作者:行者123 更新时间:2023-12-04 01:39:09 26 4
gpt4 key购买 nike

我有什么:

  • 在 webs.com 中购买的域(我将其称为 contoso.com);
  • 连接到该域的 Office 365 帐户(我的电子邮件地址类似于 john@contoso.com);
  • 托管在 Azure 中的 Django 应用程序;

  • 我要的是:

    我想配置 Django 以便使用我的 john@contoso.com 发送电子邮件地址。

    我做了什么:

    我试过这个 Django 配置:
    EMAIL_USE_TLS = True
    EMAIL_HOST = 'smtp.office365.com'
    EMAIL_PORT = 587
    EMAIL_HOST_USER = 'john@contoso.com'
    EMAIL_HOST_PASSWORD = 'xxxxxx'

    但它没有用。所以,为了测试,我尝试了免费的 Google SMTP 服务器:
    EMAIL_USE_TLS = True
    EMAIL_HOST = 'smtp.gmail.com'
    EMAIL_PORT = 587
    EMAIL_HOST_USER = 'john@gmail.com'
    EMAIL_HOST_PASSWORD = 'yyyyyy'

    这次成功了,但显然,电子邮件是从 john@gmail.com 发送的。而不是来自 john@contoso.com .

    之前的配置有什么问题?或者我可能需要对我的 Office 365 帐户进行一些更改?

    更新

    到目前为止,我已经尝试通过以这种方式设置 Django 的 ADMINS 变量来接收电子邮件:
    ADMINS = [('Admin Name', 'admin@gmail.com')]

    然后我使用日志对象发送电子邮件:
    logging.error("Hello admin!!")

    如前所述,这仅在我使用 smtp.gmail.com 时才有效。 .今天我尝试使用 send_mail功能:
    send_mail(
    'Subject here',
    'Here is the message.',
    'john@gmail.com',
    ['mail@gmail.com'],
    fail_silently=False,
    )

    它可以使用 smtp.gmail.com 工作和 smtp.office365.com配置。不幸的是,这对我来说不是一个有效的解决方案,因为我需要在出现错误或异常时通知管理员。那么,为什么 send_mail函数适用于 smtp.office365.comADMIN设置不?

    最佳答案

    它不是 Django,而是使用 PowerShell 确认 SMTP 中继正在工作。确保发件人地址与用于身份验证的帐户相同。也尝试使用 SSL 并查看。

    https://i.imgur.com/bS04QMh.png

    https://i.imgur.com/sERhkKg.png

    关于Django:通过 Office365 发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58305534/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com