码迷,mamicode.com
首页 > 微信 > 详细

微信支付-JSAPI支付V3-支付通知接口

时间:2015-05-05 16:11:55      阅读:739      评论:0      收藏:0      [点我收藏+]

标签:

首先我们会在配置支付请求参数的时候,配置了回调地址(notify_url),支付完成微信服务器就会将结果推送到这个地址上,我们只是需要获取那些数据就可以了,然后根据处理相关业务。

后台代码:

        /// <summary>
        /// 微信服务器支付结果通知接口
        /// </summary>
        /// <returns></returns>
        public ActionResult PayNotifyUrl()
        {

            Senparc.Weixin.MP.TenPayLibV3.ResponseHandler payNotifyRepHandler = new Senparc.Weixin.MP.TenPayLibV3.ResponseHandler(null);

            payNotifyRepHandler.SetKey(Key);

            //返回的参数
            string return_code = payNotifyRepHandler.GetParameter("return_code");//返回状态码
            string return_msg = payNotifyRepHandler.GetParameter("return_msg");//返回信息

            string xml = string.Format(@"<xml><return_code><![CDATA[{0}]]></return_code><return_msg><![CDATA[{1}]]></return_msg></xml>", return_code, return_msg);
       
            //支付失败直接返回
            if (return_code.ToUpper()!="SUCCESS")
            {
                return Content(xml, "text/xml");
            }

            //因为微信服务器会多次推送通知到这里,所以需要在这里判断订单是否已经完成支付,如果完成,则不进行下面操作

            string out_trade_no = payNotifyRepHandler.GetParameter("out_trade_no");//商户订单号
//验证请求是否从微信发过来(安全) if (payNotifyRepHandler.IsTenpaySign()) { //正确的订单处理 } else { //错误的订单处理 } return Content(xml, "text/xml"); }

 

微信支付-JSAPI支付V3-支付通知接口

标签:

原文地址:http://www.cnblogs.com/rockchen/p/4479003.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!