1

我正在尝试测试我的 Anymail(使用 Mailgun)webhook 的设置。当前使用https://ngrok.com/将 HTTPS 地址重定向到本地地址以正确处理 localhost:80 地址。

Mailgun 允许向 webhook 发送测试请求,该 webhook 指向 ngrok 提供的临时地址,例如:

https://random:random@somthing.ngrok.io/webhooks/anymail/mailgun/tracking/

anymail-webhook之后,应用程序当前能够实际接收 webhook 调用,如日志中所示:

web          | "POST /webhooks/anymail/mailgun/tracking/ HTTP/1.1" 200 0

响应码 200 表示后端正确接收到 webhook 并发送了确认。

网址在这里设置:

path('webhooks/anymail/', include('anymail.urls')),

信号接收器很简单:

from anymail.signals import tracking
from django.dispatch import receiver

@receiver(tracking)
def handle_signal(sender, event, esp_name, **kwargs):
    print('[ --- ] {}'.format(event))

我希望每次 POST 都能在我的外壳中看到一些东西,/webhooks/anymail/mailgun/tracking/但显然接收器从未接收到信号,因此不打印任何东西。

我经历了几次,我不知道我错过了什么。

4

0 回答 0