猿问

如何从 ThreeDSNotificationURL 获取 CRes 值

我正在努力升级 sagepay direct v4.00。我已经到了要求验证的阶段(输入“挑战”页面)。一旦我输入挑战并按下下一步,我就会重定向到我在 ThreeDSNotificationURL 中指定的页面(类似于之前的 TermUrl)。我可能错了,但我的理解是,此时我们获得了 CRes val。如果这是正确的 - 我该如何获取这个 Val 并将其传递给 SagePay?

我知道这个问题可能太模糊了。我正在使用 PHP - 如果有人在 php 上有一个这样的工作示例,那么看看会非常有帮助。


人到中年有点甜
浏览 162回答 2
2回答

SMILET

一旦挑战流程完成(成功或失败),CRes 就会以名为cres.它伴随着一个可选输入threeDSSessionData,当原始 CReq 发布到 ACS 时可以提供该输入。这只是自由文本,允许用户跟踪状态。请注意,该cres字段的内容是 Base64 URL(不仅仅是 Base64)编码的。这在EMVCo 3DSv2 2.1 规范中都提到了,但不可否认它被埋得很深。

DIEA

CRes 被回发到您指定的 URL,因此处理此问题的 PHP 页面应该能够从$_POST对象中读取 CRes 。获得它后,您需要将其与 VPSTxId 一起传回 Sagepay(请记住从中删除花括号),就像在 VPS 3.00 中将 PaRes 传回给它们一样
随时随地看视频慕课网APP
我要回答