是否可以将localhost设置为Stripe webhook URL?

Dja*_*Dev 14 php webhooks stripe-payments

我正在使用Stripe创建支付网关.

我想将我的localhost网址设置localhost/stripe/webhook.php为我的webhook网址.是否可以将localhost地址设置为webhook URL?这将用于创建在Stripe中每次成功收费时触发的邮件服务.

Vin*_*hni 26

查看http://www.ultrahook.com,它允许您在localhost上接收webhooks

  • 正如其他人在下面回答的那样,可能想要考虑更受欢迎的[ngrok](https://github.com/inconshreveable/ngrok)这是开源的. (3认同)
  • ngrok 每分钟都有限制,这使得它对开发毫无用处。 (2认同)
  • 使用 Stripe CLI 的警告将同时向 *localhost* **和您的 Webhook 设置中定义的任何** *staging* Webhook URL 发送事件。多次失败后,Stripe 会提醒帐户持有者(通常是客户端)并完全删除 Webhook URL。 (2认同)

the*_*com 24

如何使用ngrok并设置Stripe Webhooks url

来源链接

  1. 首先下载ngrok并将其压缩到您的计算机上
  2. 双击ngrok.exe
  3. 尝试在此终端提示符下键入ngrok.exe http 80以显示端口80

  4. 例如,如果我们在localhost上有Stripe webhooks url,那么 http://localhost/stripeproject/webhook.php

  5. 只需使用您的webhooks服务指定您的ngrok网址作为端点,您就差不多完成了.

  6. 您可以设置此URL http://f253021b.ngrok.io/stripeproject/webhook.php,将测试webhook发送到您帐户的webhooks设置中的集成端点.

它对我来说很好.

更多详情请点击这里


Mat*_*att 5

不,这行不通。Stripe 服务器必须能够联系您的服务器以发送 webhook。Stripe 不知道如何联系您的 "localhost" 。您需要一个 Web 可访问地址或 IP 地址才能使其正常工作

  • 这就是 ngrok 的用途。它使您的本地可访问 (2认同)

flo*_*mas 5

There's now another option: you can now use the Stripe CLI to seamlessly test webhooks locally without the need for a 3rd party tool.

In this case you would just do something like this to plumb your Stripe events through to your local webhook handler code:

stripe listen --forward-to localhost/stripe/webhook.php
Run Code Online (Sandbox Code Playgroud)

  • 它可能不是第 3 方,但不幸的是您确实需要安装另一个工具。然而,这应该是现在推荐的答案。 (2认同)
  • 如果您需要调试 webhooks,请将 `?XDEBUG_SESSION_START=phpstorm` 附加到 url 并将其用引号引起来。但请注意,stripe webhook 超时的速度非常快。 (2认同)

小智 5

尝试使用 stripe CLI:

您可以在此处将事件转发到本地主机服务器。

https://stripe.com/docs/webhooks/test


Pat*_*ick 0

正如马特所说,您需要将其放在网上的某个地方 - 最好使用 https://。供您参考,我在 2 个月前在这里发布了一个邮件 Webhook 示例: https: //github.com/pnommensen/Stripe-Webhook-Emails