我目前正在使用测试PSD2协议4.0版本的更改。
我使用本地主机网站地址在Visual下运行。
当调用设置为本地主机地址( SagePay )的ThreeDSNotificationURL支付端点(http://localhost:15536/Payments/ThreeDResponse)时,我会收到以下错误:'3228 : ThreeDSNotificationURL字段格式无效‘。
如果我将此字段更改为完全限定域(http://www.google.com),则不再接收错误,但无法完成测试。
在协议的3.0版本中,对termurl使用localhost就像预期的那样工作。
发布于 2019-07-21 09:18:31
你的ThreeDSNotificationURL在你的帖子中编码了吗?我这样发送它,它是好的: sb.Append(HttpUtility.UrlEncode("https://www.clientdomian.com/ac/ThreeDSNotificationURL.aspx"));,我运行在我的本地IIS上的站点进行开发。
发布于 2019-08-14 19:43:34
我试图像你自己一样在本地工作,并接受同样的问题。在表示支持后,他们确认不会接受“本地主机”。此外,文档表明HTTPS是必需的,因此这也可能是一个阻塞因素。
我认为有人建议使用ngrok作为将外部请求隧道到本地主机的方法,这是继续在本地进行开发的好方法,同时对SagePay等服务也是可见的。
一旦我通过了上面的问题,我还得到了其他缺少的必需字段的几个错误,如下所示;https://www.sagepay.co.uk/support/38/psd2-under-direct-integration (注意,如果BrowserJavascriptEnabled为真,那么所有条件字段都是必需的)
发布于 2021-11-18 16:23:18
我最近有这个问题,我想把它记录在这里,因为搜索这个问题的结果很少。
当我将Opayo/SagePay扩展(MageNest SagePay for Magento)切换到3ds2时,我得到了这个错误代码。
事实证明,完整的URL并没有被发送。它试图发送sagepay/direct/postBack?form_key=HZuYxgiEq9w2CNFB而不是https://www.example.com/sagepay/direct/postBack?form_key=HZuYxgiEq9w2CNFB。这在一定程度上是我的错,因为配置中有一个域字段是空的(它不像域不能被自动检索,嗯),还有一部分是供应商的错误,因为它是非常糟糕的文档。
因此,虽然对于不同的平台来说,这是一个不同的问题,但我希望这能帮助到一些人。
https://stackoverflow.com/questions/57115103
复制相似问题