asp.net调用支付宝即时到账接口付款成功后怎样回调到指定的页面,然后根据返回信息进行业务逻辑处理。
我们在调用支付宝接口的时候,会向支付宝接口网关发送一系列参数,其中包括:卖家账户,订单号,订单名称,金额,数量,合作伙伴ID,卖家支付宝账号等等。其中有2个参数对于我们第三方应用来说很重要:notify_url和return_url。
notify_url是服务器异步通知页面路径,这个页面是支付宝服务器端自动调用的,我们可以根据支付宝反馈过来的信息进行我们网站的下一步业务逻辑处理。支付成功后,支付宝回的返回信息中的trade_status参数值为TRADE_SUCCESS。这个页面支付宝的服务端会可能会不止一次的发送数据过来,以确保你的网站收到并且处理。
return_url这个是支付宝支付后同步跳转页面路径,也就是用户付款成功后跳回到我们网站页面的路径。这个路径支付宝只会请求一次,可能会失败导致我们付款后不能成功的跳回来,所以,我们的业务逻辑处理一定要写在notify_url中,否则可能会造成业务数据丢失。
测试时注意:我们在进行支付宝支付测试的时候,我们的测试路径一定不能是localhost开头的,因为这样支付宝服务器端是无法请求回来的。在notify_url中处理业务逻辑时,应该先验证该业务是否已经处理过了,否则容易造成重复处理。
支付宝的支付接口确实挺好用的,而且速度快,稳定性也非常高,是一个不错的选择。