ASP.NET MVC网站集成支付宝

版权所有,禁止匿名转载;禁止商业使用。

目前支付宝集成的官方代码示例里C#语言只有ASP.NET (WebForm)版本的,没有ASP.NET MVC版本的,所以写了个ASP.NET MVC的版本丢GitHub上了,地址是 https://github.com/blrchen/AlipayIntegrationMVC


一些注意事项


调试前请先在保证AlipayConfig.cs和PaymentController.cs的SubmitAlipay方法里的配置都更新成正确的参数。

不要用localhost调试,要用申请账号的域名调试。

关于return_url和notify_url

return_url是支付完毕后,从支付宝跳转回来的页面,可以理解为是一个同步的接口,只返回一次,商家支付完毕后的业务逻辑都应该在这个页面实现。这个页面可以通过http get方法直接取得交易结果的相关参数,比如商户订单号,支付宝交易号,交易状态等等。

notifiy_url是个异步通知的接口页面,支付宝会在48小时内将支付结果主动post到这个页面,如果失败则会多次尝试,直到成功为止。这个接口的主要好处是减少了丢包(比如用户支付完毕但是没能成功的返回商家网站),从而避免了商家丢失订单信息后需要人工完成的对账工作。

不要假设return_url会先于notify_url发生,支付宝没有保证这2个的先后顺序,所以在return_url的时候也要判断交易是否已经处理过。


0 0