【问题标题】:Why is Sagepay notification using GET not POST?为什么 Sagepay 通知使用 GET 而不是 POST?
【发布时间】: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


【解决方案1】:

这发生在我身上,因为他们在我告诉他们的时候联系 example.com/callback 上的服务器,而我们的 apache 配置将他们重定向到 www.example.com/callback,然后他们使用 GET 访问。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-13
    • 1970-01-01
    • 2016-12-11
    • 2010-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-04
    相关资源
    最近更新 更多