【发布时间】:2014-10-21 20:50:13
【问题描述】:
我已经按照集成指南实施了 Sagepay(使用 C#/ASP.NET)。尽管通过我的通知脚本进行的所有付款都不起作用,但它没有按预期工作。
指南说:
Sage Pay 服务器使用端口 80 和 443 向您服务器上的 NotificationURL 脚本发送 HTTP 或 HTTPS POST 以指示交易结果。请确保您仅使用这些端口,因为硬编码任何其他端口将产生错误。交易授权结果总是发布到您的 NotificationURL。
这不是我所看到的,通知 url 是通过 GET 而不是 POST 访问的,所以我无法使用以下方式访问任何交易信息:
IServerNotificationRequest serverNotificationRequest = new SagePayServerIntegration().GetServerNotificationRequest();
serverNotificationRequest.VendorTxCode // <- this is an empty string
任何帮助表示赞赏。有没有人见过这种使用 GET 而不是 POST 的行为?
谢谢
【问题讨论】:
-
作为一个厌倦了与支付提供商打交道的人的一般评论,我建议您 (a) 永远不要假设他们会以任何合乎逻辑的方式行事,(b) 永远不要假设他们不会改变每天不更新他们的文档,(c) 永远不要假设他们实际上遵循自己的文档。在这方面,条纹似乎是最不可怕的。
-
这也发生在我身上,我只是得到一个没有请求变量的 GET。
标签: opayo