当前位置:
首页 > Python基础教程 >
-
C#教程之微信小程序之微信支付C#后台(统一下单(2)
"<xml>");
sb.Append("<return_code><![CDATA[" + returnCode + "]]></return_code>");
sb.Append("<return_msg><![CDATA[" + returnMsg + "]]></return_msg>");
sb.Append("</xml>");
return sb.ToString();
}
#endregion
5、PayInfo类
public class PayInfo { /// <summary> /// 小程序登录API /// </summary> public static string loginUrl = ConfigurationManager.AppSettings["loginurl"].ToString(); /// <summary> /// 统一下单API /// </summary> public static string orderUrl = ConfigurationManager.AppSettings["orderurl"].ToString(); /// <summary> /// 支付结果通知API /// </summary> public static string notifyUrl = ConfigurationManager.AppSettings["notifyurl"].ToString(); /// <summary> /// 查询订单API /// </summary> public static string queryUrl = ConfigurationManager.AppSettings["queryurl"].ToString(); /// <summary> /// 申请退款API /// </summary> public static string refundUrl = ConfigurationManager.AppSettings["refundurl"].ToString(); /// <summary> /// 退款通知API /// </summary> public static string refundNotifyUrl = ConfigurationManager.AppSettings["refundnotifyurl"].ToString(); /// <summary> /// 退款通知API /// </summary> public static string refundQueryUrl = ConfigurationManager.AppSettings["refundqueryurl"].ToString(); /// <summary> /// 小程序唯一标识 /// </summary> public static string appid = ConfigurationManager.AppSettings["appid"].ToString(); /// <summary> /// 小程序的 app secret /// </summary> public static string secret = ConfigurationManager.AppSettings["secret"].ToString(); /// <summary> /// 小程序的授权类型 /// </summary> public static string grantType = ConfigurationManager.AppSettings["grant_type"].ToString(); /// <summary> /// 商户号(微信支付分配的商户号) /// </summary> public static string mchid = ConfigurationManager.AppSettings["mch_id"].ToString(); /// <summary> ///商户平台设置的密钥key /// </summary> public static string key = ConfigurationManager.AppSettings["key"].ToString(); /// <summary> /// 随机字符串不长于 32 位 /// </summary> public static string nonceStr = PayHelper.GetNonceStr(); /// <summary> /// 时间戳 从1970年1月1日00:00:00至今的秒数,即当前的时间 /// </summary> public static string timeStamp = PayHelper.GetTimeStamp(); /// <summary> /// 终端IP APP和网页支付提交用户端IP, /// </summary> public static string addrIp = PayHelper.GetIP; /// <summary> /// 交易类型 小程序取值如下:JSAPI /// </summary> public static string tradeType = "JSAPI"; /// <summary> /// 签名类型 默认为MD5,支持HMAC-SHA256和MD5。 /// </summary> public static string signType = "MD5"; /// <summary> /// 商品描述 商品简单描述,该字段请按照规范传递 /// </summary> public static string body = "奇小爱的异想世界-支付"; /// <summary> /// 附加数据 在查询API和支付通知中原样返回 /// </summary> public static string attach = "微信支付信息"; /// <summary> /// 签名,参与签名参数:appid,mch_id,transaction_id,out_trade_no,nonce_str,key /// </summary> public string sign = ""; /// <summary> /// 微信订单号,优先使用 /// </summary> public static string transactionid = ""; /// <summary> /// 商户系统内部订单号 /// </summary> public static string out_trade_no = ""; /// <summary> /// 商户退款单号 /// </summary> public static string out_refund_no = ""; /// <summary> /// 退款金额 /// </summary> public static decimal refundfee; /// <summary> /// 订单金额 /// </summary> public static decimal totalfee; }
三、微信小程序调用
1、小程序调用方法,发起支付,具体如下:
微信小程序支付方发起微信支付。
2、示例代码:
wx.requestPayment({ 'timeStamp': '', 'nonceStr': '', 'package': '', 'signType': 'MD5', 'paySign': '', 'success':function(res){ }, 'fail':function(res){ } })
3、测试完成支付
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式