我有一个问题,如果你能帮我出出主意,我将不胜感激。
在在线酒店或机票预订系统中,通常会为用户分配一个特定的时间来完成他们的注册/付款等,在此期间系统会保留该用户的预订。如果用户无法在此期间完成注册,系统将超时,并且不允许用户继续进行任何操作。系统为其他用户取消保留。
我的问题是,如果用户被带到支付网关系统(paypal 等)并且他们在支付页面上花费了所有分配/保留时间,并且在成功支付后他们返回网站,将即使用户用完了他分配的时间,系统仍然允许他们完成预订?
这在典型的预订系统中如何运作?
非常感谢。
最佳答案
如果您使用的是与支付网关的同步连接,那么一旦支付流程启动,预订状态应该会更改为“待付款”之类的状态。如果支付网关响应失败(或者您超时),您将其报告给用户,是否延长 session 时间由您决定。
如果您使用异步连接,例如将用户重定向到 PayPal 页面并等待返回响应,那么您可能需要考虑授权而不是付款:如果用户在之后被重定向回您的网站 session 时间限制已过,取消授权并通知用户他们花费的时间太长,需要重新开始。如果他们在他们的时限内,请告诉 PayPal 完成交易并确保您收到款项。
希望对您有所帮助:)
关于algorithm - 保留预订的概念,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11237619/