Dav*_*idT 5 c# asp.net webhooks stripe-payments
我正在使用NuGet的Stripe.net SDK。我总是得到
Webhook的签名在Stripe-Signature标头中不存在。
StripeEventUtility.ConstructEvent方法中的异常。
[HttpPost]
public void Test([FromBody] JObject incoming)
{
var stripeEvent = StripeEventUtility.ConstructEvent(incoming.ToString(), Request.Headers["Stripe-Signature"], Constants.STRIPE_LISTENER_KEY);
}
Run Code Online (Sandbox Code Playgroud)
WebHook密钥正确,请求标题包含“ Stripe-Signature”密钥。
我正确地从Webhook测试器实用程序接收了传入的数据(在Visual Studio中使用nGrok)。
该secureCompare方法似乎是罪魁祸首=> StripeEventUtility.cs
我试图操纵从Stripe传入的数据(Jobject,字符串,序列化...)。有效负载签名可能会引起一些问题。
有人遇到过同样的问题吗?
Stu*_*tLC 11
根据@Josh 的评论,我收到了同样的错误
Webhook 的签名不存在于 Stripe-Signature 标头中。
这是因为我错误地使用了 API 密钥(以 开头sk_)来验证EventUtility.ConstructEvent.
取而代之的是,条纹网络挂接有效载荷与网络挂钩签名密钥(开始标志whsec_)为每文档
该Web Hook Signing Secret可以从获得Developers -> WebHooks页面:
由于您使用的是 Stripe 仪表板中的密钥,也可能会发生该错误。如果使用 CLI 进行测试,则需要使用 stripe cli 生成的临时文件。
要获取它,请运行以下命令:
stripe listen --print-secret
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1181 次 |
| 最近记录: |