我在使用Django的smtp库的不同设置(localhost,生产系统)上遇到了一个奇怪的,可重现的问题:
auth plain authentication string完全不合适。这是python控制台返回的内容:
sys.version_info
sys.version_info(major=3, minor=5, micro=0, releaselevel='final', serial=0)
from email.base64mime import body_encode as encode_base64
encode_base64(("\0%s\0%s" % ("User Name", "1234123241-23421334")).encode("ascii"), eol='')
'AFVzZXIgTmFtZQAxMjM0MTIzMjQxLTIzNDIxMzM0'
但是当我通过python的smtplib.py发送电子邮件时,这是由smtplib.py生成的auth plain authentication字符串:
AFVzZXIgTmFtZQBiJzEyMzQxMjMyNDEtMjM0MjEzMzQn
此处生成:https://github.com/python/cpython/blob/master/Lib/smtplib.py#L629
示例:https://gist.github.com/macolo/bf2811c14d985d013dda0741bfd339e0
我迫切需要一个关于此的线索,谢谢。
答案 0 :(得分:0)
aldryn-emailsettings已被弃用,但它还不支持python3。使用最新版本的aldryn-django(1.8.15.2或1.9.8.2及更高版本)并将电子邮件连接设置为EMAIL_URL
环境变量。
有关支持的后端,请参阅https://pypi.python.org/pypi/dj-email-url/。