我正在尝试在我的应用程序中实施支付提供程序(AdYen)。付款完成后,AdYen会通过HTTP POST请求向我发送通知,告知我在后台提供的URL。例如:
http://myhost.com/Payment/FinishPayment/
FinishPayment是Payment控制器中的Action方法。该调用确实以该方法结束,但AdYen给出了以下错误:
所需的字符串“[accepted]”不在所有结果中
不知怎的,我必须在“notificationResponse”中返回字符串“[accepted]”。但是如何?
我看到了一个PHP示例:
function FinishPayment( ) // function is called by AdYen
{
// Do stuff...
return array("notificationResponse" => "[accepted]");
}
任何人都知道如何在C#.NET MVC3中发送回复?
答案 0 :(得分:2)
这已经很老了,但是我正在使用它,也许它可以帮助将来的任何人
选择HTTP POST而不是SOAP将导致Adyen为每个通知发出POST,因此在MVC 3(或4,或简称ASP .Net)中,您可以创建一个通用处理程序来处理这些请求,并且只需创建一个context.Response.Write("[accepted]");
。至少在测试环境中,他们似乎认为这些反应是好的。
顺便说一句,他们不会将任何数据签名作为POST参数发送,但如果您配置了用户和密码,他们将通过授权标头进行基本的Http身份验证进行身份验证,以便验证您的请求服务器