我正在运行一个django应用程序运行在docker上,我使用django-anymail通过mailgun发送电子邮件。
例如,当我读到忘记密码进程时,在django-anymail中出现了一个错误:
AnymailRequestsAPIError:邮箱API响应中的无效JSON从info@application.co.uk Mailgun API响应200 (OK)发送消息给testemail@test.com:'Mailgun Magnificent API‘@anymail/backend/base_requests.py在deserialize_json_response第106行
如果我将docker exec -it放到django容器上并在python manage.py shell中运行以下代码,我就能够重新创建这个错误
from django.core.mail import send_mail
customer_email = send_mail('Test','Test','info@*application*.co.uk',["*test@test.com*"],fail_silently=False) 如果我在构建和运行我的production.yml对接器后在本地运行它,它可以工作,我会收到一封电子邮件,但是如果我在我的数字海洋液滴上的容器上运行这个,我会收到一个错误。
是否有一个配置,我是丢失的,以使这个工作?我有另一个django应用程序只是运行在一个水滴(没有对接),它工作良好的mailgun使用相同的设置。
发布于 2019-04-05 19:09:20
错误“Magnificent”很可能是由#字符在您的MAILGUN_SENDER_DOMAIN中引起的。当您尝试在不支持配置文件格式的配置文件格式中使用行尾注释时,通常会发生这种情况:
# .env
MAILGUN_SENDER_DOMAIN=mail.example.com # INVALID: dotenv doesn't allow comment here如果升级到django-anymail v6.0,您将得到一条改进的错误消息,从而使这一点更加明显。
(这个答案涵盖可能导致“Mailgun卓越API”的其他情况。)
https://stackoverflow.com/questions/55533110
复制相似问题