我正在将 Sage Pay Direct 集成到网站中。目前,我正在测试模式下运行所有内容,并且一切正常,除非我使用 3D Secure 测试付款。
我在这里使用 Sage Pay 测试卡中的第一张卡详细信息:
http://www.sagepay.co.uk/support/12/36/test-card-details-for-your-test-transactions http://www.sagepay.co.uk/support/12/36/test-card-details-for-your-test-transactions
这会导致我的网站转到其 3D 安全页面,其中包含一个 iframe,该 iframe 从其测试服务器加载 Sage Pay 自己的 3D 安全页面。然而,它完全是空的。这是一个空白页,根本没有源代码。
这是我的 iframe,它会自动自行提交以加载 Sage Pay 3D Secure 页面:
<html>
<head>
<title>3D-Secure Authentication</title>
</head>
<body>
<form action="https://test.sagepay.com/mpitools/accesscontroler?action=pareq" method="post">
<input type="hidden" name="MD" value="2015466070671410" />
<input type="hidden" name="PaReq" value="eJxVkttygjAQhu/7FAwPQAhyEGeNY u0paMto06ntynsCFM5BVB8 yYIteZq/83my 6fwKLLjtoJRZ0W Vynhqkv2APCmSwwbrmB9TSeK5bJr39ie/4nmt6putRm5o6g3C5xYrBAGKSY1Ago5QEESU8bxjwqHoM3pntU9fzgAwSMhTBijlT35LUsdf4iXldQK5pyHmGbJ/gR/ct0viAW6yRS KLKNoSSL8NUdHmjbiwqeUGQW04siSpwerwerilnhJzPZ6MYCBinTZofjKjICBBVBOTWZNiqqJbQLo1ZEofPXvfmJCe ro5JWp2yjfj5Wn2uolQExb5BJa1zTp45GpzPqzlT/fR54prphlt3PNCgo1SXLu63/KZDeC8yjcaBRAXZlkaM6BOQvhhjriO3UK4X8om3CQF6uUkBuwzy9Kv jRlpKlfV9pHipdIq61OyBSgBRtWR4VTJ8ABndfYxf1D28kg==" />
<input type="hidden" name="TermUrl" value="https://www.example.com/payment/auth-return" />
</form>
<script>
document.forms[0].submit();
</script>
</body>
</html>
这些字段的数据来自之前发出的请求,由 Sage Pay 返回。如您所见,我发送以下字段:
我已阅读Sage Pay 直接集成指南 http://www.sagepay.co.uk/file/12236/download-document/DIRECT_Integration_and_Protocol_Guidelines_010814.pdf文档 100 次,这似乎是正确的,并且字段名称是正确的,并且区分大小写的名称正确。
- 这是使用 Sage Pay 协议 v3.00
- 几年前我已经在 v2.2.3 中成功实现了这个
- 我比较了两个网站(新旧),它们看起来一样
- 不使用 3D Secure 的付款可以 100% 工作,因此总体集成是正确的
您的 PaReq 字段中有空格。将它们替换为“+”......
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)