Я пытаюсь отладить представление, которое получает входящую почту от Mailgun к установке Django на Heroku.Отладка 500 на входящей почте на Heroku от Mailgun
Само представление непосредственно берется из документов Mailgun, и если я вручную вызываю URL-адрес, тогда получаю ответ OK.
@csrf_exempt
def askfriend_emailresponse(request):
from_email = "..."
to_email = "..."
if request.method == 'POST':
sender = request.POST.get('sender')
recipient = request.POST.get('recipient')
answer = request.POST.get('stripped-text', '')
try:
send_mail("inside post"+str(recipient[recipient.find("+")+1:recipient.find("@")]), answer, from_email, to_email)
except Exception, e:
raise e
return HttpResponse('OK')
Кроме того, если я просто поместить сообщение в этот URL с помощью внешнего инструмента (я использую плакат для этой цели) я могу получить 200 (я должен был добавить @csrf_exempt
для этого, но это нормально для Теперь).
Однако из бревен Mailgun я вижу, что есть 500 Ошибка при пересылке сообщения и от Heroku Я вижу, что входящий запрос вызвав 500:
2013-03-13T09:59:04+00:00 heroku[router]: at=info method=POST path=[url] host=[hostname].herokuapp.com fwd="198.61.253.112" dyno=web.1 queue=0 wait=0ms connect=1ms service=86ms status=500 bytes=102194
Мои вопросы после того, как тратить больше день ИССЛЕДОВАНИЕ:
1) Любая идея, что может быть неправильно (было бы неплохо) - и, по крайней мере, как важно
2) Как я могу правильно проверить это? Поскольку журналы Mailguns очень короткие (500 - вот и все!), И Heroku также на самом деле не помогает там ... Кроме того, необходимость всегда развертывать в Heroku сначала, очевидно, довольно медленно, следовательно, мне интересно, действительно ли это «умный» способ разработки ... (все остальное, что я, очевидно, проверяю локально, но с внешней электронной почтой, проходящей через POST через Mailgun, я не знаю, как тестировать это локально)
Спасибо!
Как выглядит ваша конфигурация Django? Я сделал небольшой помощник для настройки Sendgrid и/или Mailgun на Heroku прямо из среды: https://github.com/fubaz/djheroku/blob/master/djheroku/conf.py#L77 – ferrix
Также в заголовке говорится о входящая почта и send_mail выглядят как исходящие. – ferrix
Спасибо - send_mail на самом деле был для меня своего рода «уведомляющим сообщением», что все в порядке - я, вероятно, мог бы вместо этого вывести его в файл журнала, просто подумал, что отправка простого сообщения может быть проще. Также - отправка почты работает правильно в других частях системы - следовательно, не уверен, что это проблема среды (ваш файл конфигурации выглядит очень похоже на мой). – Jonas