我编写了一个Frazy IPG的扩展名(这是一个本地支付网关,根本不出名)。在他们的支付网关中,我们需要将值传递给他们的服务器并加密并将其发送给MIGS,当交易成功或失败时,它返回到我的网站,状态为。
状态值在重定向到我的网站时会添加到网址
如果成功
index.php?route=payment/frazyiph/callback/&?status=success&message=transaction_success
如果失败
index.php?route=payment/frazyiph/callback/&?status=failed&message=invalid_card
这些是付款后返回的唯一值。所以我从网址捕获状态和消息,并相应地更新数据库。
我遇到的问题是当一个人添加产品并直接粘贴成功网址时
index.php?route=payment/frazyiph/callback/&?status=success&message=transaction_success
它会在付款后更新。所以我尝试捕获order_id并检查它不是空的并相应地更新。问题是当一个人选择在IPG支付并取消它时返回到我的页面说付款被取消。然后,如果有人粘贴成功网址,则会在用户付款时更新,因为订单ID已生成。
有没有办法保护回调功能并确保用户从IPG重定向到我的网站更新订单而不只是在地址栏中输入网址?
答案 0 :(得分:1)
我真的不了解你,这是你为正在开发的支付模块提出的第三个问题,到目前为止我已经尝试过帮助你了解每一个,但到目前为止,我甚至不知道我是否帮助了你虽然我看到你在开发过程中继续前进,但我们将非常感谢一些反馈......
对于您当前的问题,有一种方法,您需要检查带有php变量$_SERVER['HTTP_REFERER']
的标头或其他一些$_SERVER['']
变量应该提供必要的信息,以便您可以指定只有来的数据来自IPG的是你会接受的。