2016-07-27 2 views
1

Я пытаюсь получить почтовый запрос электронной почты (по электронной почте открыт) http (not https) от Mailgun с использованием Anymail под Django.Django + Anymail + Mailgun Webhook => нет HTTP_AUTHORIZATION в META

После отправки по электронной почте успешно и открыть его, посылается запрос к серверу из Mailgun, но потом по какой-то причине, я получаю это в моих журналах:

"Missing or invalid basic auth in Anymail Mailgun webhook"

Я использую сервер Apache с Ubuntu 14.04 и Python 2.7.12 Я пробовал использовать тестовый сервер Django, и там он работает нормально.

В моем setting.py у меня есть:

ANYMAIL = { "MAILGUN_API_KEY": "key-f962ecaf....", 'WEBHOOK_AUTHORIZATION': 'SJEi3JF...:Qo9Eu1...' } EMAIL_BACKEND = "anymail.backends.mailgun.MailgunBackend"

И конечно Anymail в моем INSTALLED_APPS.

webhook URL в Mailgun является: http://SJEi3JF...:[email protected]/appname/anymail/mailgun/tracking/

У меня есть ощущение, что некоторые, как связанные в сообщение PARAMS заблокированный Джанго.

Спасибо в продвижении.

После более глубокой проверки, я обнаружил, что HTTP_AUTHORIZATION в запросе.META и все еще я не знаю почему.

+0

Какую версию Anymail вы использовали? Была [ошибка] (https://github.com/anymail/django-anymail/commit/af0e36ab6556b372fbf5b92b3dea29fafb1a3866), где webhooks неправильно применяли проверки CSRF, исправленные в v0.4. – medmunds

+0

Я только что столкнулся с той же проблемой. Вы когда-нибудь находили решение? – pymarco

ответ

1

Я решил эту проблему, добавив следующее в мой apache conf.

WSGIPassAuthorization On 
Смежные вопросы