You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django集成Stripe Webhook遇404路径未找到问题求助

Django Stripe Webhook 404 问题排查方案

核心问题:路径前缀缺失

你的项目级路由为my_app设置了my_app/前缀,但Stripe监听的地址直接使用localhost:8000/stripe_webhook/,漏掉了my_app前缀,导致请求无法匹配到对应路由。

1. 修正转发路径

停止当前Stripe监听进程,重新执行以下命令:

stripe listen --forward-to localhost:8000/my_app/stripe_webhook/

之后再次执行stripe trigger customer.created测试,观察服务器日志是否打印"enter webhook",确认请求进入视图。

2. 验证路由配置完整性

  • 检查应用级urls.py中的..是否包含通配符路由(如path('', views.index)),确保stripe_webhook/路由放在这类通配符路由之前,避免被提前拦截。
  • 确认项目级urls.py里的include('my_app.urls')没有拼写错误,应用名称与实际一致。

3. 测试视图可达性

临时修改stripe_webhook视图,添加简单返回逻辑:

@csrf_exempt
def stripe_webhook(request):
    print("enter webhook")
    return HttpResponse("Webhook test")
    # 原有代码保留在下方
    stripe.api_key = settings.STRIPE_SECRET_KEY_TEST
    ...

用curl或浏览器访问http://localhost:8000/my_app/stripe_webhook/,如果能看到"Webhook test",说明路由和视图配置正常;若仍返回404,继续排查路由配置错误。

4. 确认Webhook密钥一致性

每次启动stripe listen都会生成新的Webhook签名密钥,确保.env中的STRIPE_WEBHOOK_SECRET_TEST与监听进程输出的webhook signing secret完全一致(当前404问题不涉及签名验证,但提前确认可避免后续踩坑)。

内容的提问来源于stack exchange,提问作者PhilM

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 19:02:36