更新:
正如@DavidRobinson 在评论中提到的那样,您没有从 mandrill API 身份验证调用中获得成功的响应。您应该仔细检查您的 API 密钥。
如果正确,请尝试使用 curl 发帖{"key": <your api key>, "email": <your from email>}
,MANDRILL_API_URL + "/users/verify-sender.json"
看看是否获得 200。
像这样的东西:
curl -d key=1234567890 -d email=noreply@mydomain.com http://mandrill.whatever.com/user/verify-sender.json
原答案:
Djrill 中还有一个问题会阻止有用的错误消息传播。堆栈跟踪的最后一行是问题所在。
open
这是从源代码中获取的整个方法:
def open(self, sender):
"""
"""
self.connection = None
valid_sender = requests.post(
self.api_verify, data={"key": self.api_key, "email": sender})
if valid_sender.status_code == 200:
data = json.loads(valid_sender.content)
if data["is_enabled"]:
self.connection = True
return True
else:
if not self.fail_silently:
raise
看看它是如何说raise
没有异常论点的?该语法只允许在except
块内使用,并引发当前正在处理的异常。except
它在块外不起作用。
Djrill 中的一个未解决问题提到了发送失败并链接了一个据称可以修复它的分叉。我怀疑 Djrill 没有得到很好的支持,你可能会完全尝试那个 fork 或其他解决方案。