【发布时间】:2019-03-21 21:32:04
【问题描述】:
我有一些代码可以检查来自 Stripe 的 Webhook 的数据。现在我得到了一些代码来查询我的数据库以检查付款是否已确认。我正在尝试编写一个检查我的数据库以查看是否已确认付款的函数,如果尚未确认付款,则程序应等待 5 秒然后再次检查,最多检查 5 次。如果在第五次尝试后付款仍然没有显示为已确认,那么我需要重定向用户。
这是因为我的代码执行速度可能比 Stripe 将其 webhook 响应返回到我的服务器更快。
当前代码如下。如何在 if 语句上创建“循环”?
def accepted(request, payment_id):
r = Usertasks.objects.all().filter(user=request.user).filter(randomURL=payment_id).values("TaskPostedToNetwork")
e = Usertasks.objects.all().filter(user=request.user).filter(randomURL=payment_id).values("PaymentConfirmed")
if r == "False" and e == "yes":
print("true")
else:
return redirect('dashboard:index')
return render(request, 'request.html',)
【问题讨论】:
-
您希望在每次尝试时重试这段代码的哪一部分?获取
r和e? -
@HenryWoody if/else 部分
-
所以想再检查一下
r == "False" and e == "yes"? -
@HenryWoody 正确。
标签: python redirect webhooks retrywhen