c#后台APP微信支付接口和微信公众号支付差不多

#region微信APP支付接口///<summary>///微信APP支付接口///</summary>///<paramname="out_trade_no">支付订单号</param///<paramname="total_fee">支付金额</param>///<paramname="type">1.安卓,2.IOS</param>///<returns></returns>[HttpGet]publicCommonResponse<Wx_pay>APP_Pay(stringout_trade_no,Doubletotal_fee,inttype){PayMentpm=newPayMent();stringip=HttpContext.Current.Request.UserHostAddress;intmoney=int.Parse((total_fee*100).ToString());Wx_paywp=pm.APP_PayMent("服务费",ip,money,out_trade_no,type);if(wp.sign==""){returnnewCommonResponse<Wx_pay>{Data=null,Message="系统异常,联系管理员!",Code=EnumResponseCode.Fail.GetHashCode()};}returnnewCommonResponse<Wx_pay>{Data=wp,Message=String.Empty,Code=EnumResponseCode.Successful.GetHashCode()};}#endregion//////是对返回数据类型///publicclassCommonResponse<T>{publicTData{get;set;}///<summary>///代码1:失败,2:成功///</summary>publicintCode{get;set;}///<summary>///消息///</summary>publicstringMessage{get;set;}///<summary>///其他附带信息///</summary>publicstringTag{get;set;}}///<summary>///微信APP支付实体///</summary>publicclassWx_pay{///<summary>///应用ID///</summary>publicstringappid{set;get;}="";///<summary>///商户号///</summary>publicstringpartnerid{set;get;}="";///<summary>///预支付交易会话ID///</summary>publicstringprepayid{set;get;}="";///<summary>///扩展字段///</summary>publicstringpackage{set;get;}="Sign=WXPay";///<summary>///随机字符串///</summary>publicstringnoncestr{set;get;}="";///<summary>///时间戳///</summary>publicstringtimestamp{set;get;}="";///<summary>///签名///</summary>publicstringsign{set;get;}="";}#region微信APP支付///<summary>///微信APP支付///</summary>///<paramname="boby">商品描述</param>///<paramname="mch_id">商户号</param>///<paramname="spbill_create_ip">终端IP</param>///<paramname="total_fee">金额</param>///<paramname="out_trade_no">商户订单号</param>///<returns></returns>publicWx_payAPP_PayMent(stringboby,stringspbill_create_ip,inttotal_fee,stringout_trade_no,inttype){UnifiedOrderorder=newUnifiedOrder();if(type==1){order.appid=APP_Aconfig.appid;order.mch_id=APP_Aconfig.partnerid;}else{order.appid=APP_Iconfig.appid;order.mch_id=APP_Iconfig.partnerid;}order.attach="APP名称-支付内容说明";order.body=boby;order.device_info="WEB";order.nonce_str=TenpayUtil.getNoncestr();order.notify_url=APP_Aconfig.url;order.out_trade_no=out_trade_no;order.trade_type="APP";order.spbill_create_ip=spbill_create_ip;order.total_fee=total_fee;TenpayUtiltenpay=newTenpayUtil();stringpaySignKey=string.Empty;if(type==1){paySignKey=APP_Aconfig.paysignkey;}else{paySignKey=APP_Iconfig.paysignkey;}stringprepay_id=tenpay.getPrepay_id(order,paySignKey);stringtimeStamp=TenpayUtil.getTimestamp();stringnonceStr=TenpayUtil.getNoncestr();SortedDictionary<string,object>sParams=newSortedDictionary<string,object>();sParams.Add("appid",order.appid);sParams.Add("partnerid",order.mch_id);sParams.Add("prepayid",prepay_id);sParams.Add("noncestr",nonceStr);sParams.Add("timestamp",timeStamp);sParams.Add("package","Sign=WXPay");stringpaySign=tenpay.getsign(sParams,paySignKey);Wx_paywp=newWx_pay();wp.appid=order.appid;wp.partnerid=order.mch_id;wp.noncestr=nonceStr;wp.prepayid=prepay_id;wp.sign=paySign;wp.timestamp=timeStamp;returnwp;}#endregion///<summary>///APP安卓支付配置///</summary>publicclassAPP_Aconfig{publicconststringappid="";//APPIDpublicconststringpartnerid="";//商户号publicconststringpaysignkey="";//证书密匙publicconststringurl="";//回调ur}///<summary>///APPios支付配置///</summary>publicclassAPP_Iconfig{publicconststringappid="";//APPIDpublicconststringpartnerid="";//商户号publicconststringpaysignkey="";//证书密匙publicconststringurl="";//回调url}对于TenpayUtiltenpay=newTenpayUtil();这个类其他文章上有代码。请求方式:httpget接口参数说明名称类型必填说明out_trade_nostring是支付订单IDtotal_feeDouble是支付金额typeint是1.安卓,2.IOS返回示例:/****失败示例**/{"Code":1,/*状态码1:失败2:成功*/"Message":"错误信息",/*消息(一般失败时,返回错误信息)*/"Tag":""/*附加信息*/}/****成功示例**/{"Code":2,/*状态码1:失败2:成功*/“Data”:[]"Message":"",/*消息(一般失败时,返回错误信息)*/"Tag":"附加信息"/**/}接口返回Data集合参数说明名称类型说明appidstring应用IDpartneridString商户号prepayidString预支付交易会话IDpackageString扩展字段noncestrString随机字符串timestampString时间戳signString签名本人还是个新手(刚入行不久),请多多关照,后续还有微信其他内容相关项目地址:https://gitee.com/qq-w/wechat.git


这是测试接口返回结果:


下篇。。。。。。微信支付(PC端扫码支付)