0

我已向 asp.net 应用程序添加了功能,以便用户可以为购买付款。我已将我的应用程序与 payfast 集成,因此一旦用户在结帐页面上确认购买,他们就会被重定向到 payfast。我遇到的问题是,一旦他们在 payfast 端完成,用户就不会被重定向到成功页面。据我了解,重定向应该从 payfast 端自动发生。然而,我的通知页面正在被点击,我能够收集有关交易的信息。

我通过以下参数发送:

OpMode  =Test
amount  = 100.00
cancel_url= http://xxx.co.za/Checkout-Failure.aspx
confirmation_address    =yyy@yyy.co.za
custom_int1 = 4569
custom_str1 = Payfast
email_address   xxx@xxx.co.za
email_confirmation  1
item_description    description
item_name   item name
m_payment_id    123456
merchant_id 113246546
merchant_key    1235dfg56v4
notify_url  http://xxx.co.za/Checkout-Notify.aspx
return_url= http://xxx.co.za/Checkout-Success.aspx

在我的通知页面中,我将一个 http OK 状态代码发送回 payfast

    Response.Clear()
    Response.StatusCode = HttpStatusCode.OK
    Response.End()

请帮忙,我不确定我做错了什么,除了用户没有被重定向到 return_url 而是他们被发送到这个页面https://sandbox.payfast.co.za/之外,一切似乎都有效。谢谢你。

4

1 回答 1

1

删除这个:

Response.Clear()
Response.StatusCode = HttpStatusCode.OK
Response.End()

无需显式设置状态码。如果通知页面没有错误,则默认响应代码为:OK - status 200

我建议你使用Fiddler并测试通知页面。

于 2014-12-12T11:14:23.657 回答