• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >微信公众号 > C#开发微信门户及应用微信现金红包的封装及使用

C#开发微信门户及应用微信现金红包的封装及使用

作者:匿名 字体:[增加 减小] 来源:互联网

匿名通过本文主要向大家介绍了C# 微信开发等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
在上篇随笔后,经过对整个微信框架的完善和重构,已经完成了对微信支付、企业付款、现金红包、代金券及各种卡劵进行了封装完成,并把其中微信支付及摇一摇红包部分等内容作为公众号和企业号通用的部分,这些支付相关的接口在公众号和企业号里面,都可以进行调用的,在经过一系列的优化整理后,把这些内容逐一进行介绍,希望大家喜欢支持。

1、现金红包的概念及使用

1)使用场景

微信支付现金红包向微信支付商户开发,具体能力如下:

◆ 商户调用接口时,通过指定发送对象以及发送金额的方式发放红包,这样的方式,允许商户灵活的应用于各种各样丰富的活动场景

◆ 领取到红包后,用户的资金直接进入微信零钱,避免繁复的领奖流程,带给用户微信支付原生的流畅体验

2)微信红包发送规则

发送频率规则

◆ 每分钟发送红包数量不得超过1800个;

◆ 同一个商户号,每分钟最多给同一个用户发送一个红包;

红包规则

◆ 单个红包金额介于[1.00元,200.00元]之间;

◆ 同一个红包只能发送给一个用户;(如果以上规则不满足您的需求,请发邮件至wxhongbao@tencent.com获取升级指引)

◆ 红包发放后72小时未被领取将进行退款

3) 微信红包接口调用流程

◆ 后台API调用:待进入联调过程时与开发进行详细沟通;

◆ 告知服务器:告知服务器接收微信红包的用户openID,告知服务器该用户获得的金额;

◆ 从商务号扣款:服务器获取信息后从对应的商务号扣取对应的金额;

◆ 调用失败:因不符合发送规则,商务号余额不足等原因造成调用失败,反馈至调用方;

◆ 发送成功:以微信红包公众账号发送对应红包至对应用户;

C#开发微信门户及应用微信现金红包的封装及使用


2、 现金红包API接口的说明及C#的封装

用于企业向微信用户个人发现金红包,目前支持向指定微信用户的openid发放指定金额红包。

虽然可以通过微信的商户后台进行现金红包的发放,但我们也可以利用微信提供的接口API进行现金红包的发送。


接口调用请求说明


请求Urlhttps://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack
是否需要证书是(证书及使用说明详见商户证书)
请求方式POST


请求参数


字段名字段必填示例值类型说明
随机字符串nonce_str是5K8264ILTKCH16CQ2502SI8ZNMTM67VSString(32)随机字符串,不长于32位
签名sign是C380BEC2BFD727A4B6845133519F3AD6String(32)详见签名生成算法
商户订单号mch_billno是10000098201411111234567890String(28)

商户订单号(每个订单号必须唯一)

组成:mch_id+yyyymmdd+10位一天内不能重复的数字。

接口根据商户订单号支持重入,如出现超时可再调用。

商户号mch_id是10000098String(32)微信支付分配的商户号
公众账号appidwxappid是wx8888888888888888String(32)微信分配的公众账号ID(企业号corpid即为此appId)。接口传入的所有appid应该为公众号的appid(在mp.weixin.qq.com申请的),不能为APP的appid(在open.weixin.qq.com申请的)。
商户名称send_name是天虹百货String(32)红包发送者名称
用户openidre_openid是oxTWIuGaIt6gTKsQRLau2M0yL16EString(32)

接受红包的用户

用户在wxappid下的openid

付款金额total_amount是1000int付款金额,单位分
红包发放总人数total_num是1int

红包发放总人数

total_num=1

红包祝福语wishing是感谢您参加猜灯谜活动,祝您元宵节快乐!String(128)红包祝福语
Ip地址client_ip是192.168.0.1String(15)调用接口的机器Ip地址
活动名称act_name是猜灯谜抢红包活动String(32)活动名称
备注remark是猜越多得越多,快来抢!String(256)备注信息

数据示例:


<xml><xml> 
  <sign><![CDATA[E1EE61A91C8E90F299DE6AE075D60A2D]]></sign>  
  <mch_billno><![CDATA[0010010404201411170000046545]]></mch_billno>  
  <mch_id><![CDATA[888]]></mch_id>  
  <wxappid><![CDATA[wxcbda96de0b165486]]></wxappid>  
  <send_name><![CDATA[send_name]]></send_name>  
  <re_openid><![CDATA[onqOjjmM1tad-3ROpncN-yUfa6uI]]></re_openid>  
  <total_amount><![CDATA[200]]></total_amount>  
  <total_num><![CDATA[1]]></total_num>  
  <wishing><![CDATA[恭喜发财]]></wishing>  
  <client_ip><![CDATA[127.0.0.1]]></client_ip>  
  <act_name><![CDATA[新年红包]]></act_name>  
  <remark><![CDATA[新年红包]]></remark>  
  <nonce_str><![CDATA[50780e0cca98c8c8e814883e5caa672e]]></nonce_str> 
  </xml>

上面是接口及输入参数的说明,一般情况下,我们需要根据这些来决定如何实现C#代码的封装,首先我们来定义我们需要的接口和类,如下所示。

C#开发微信门户及应用微信现金红包的封装及使用

通过分析上面的接口说明,我们可以发现,其中接口有部分是固定的常规参数,也就是一般公众号或者企业号的身份信息,有部分是业务参数,因此我们把它们分别分离出来,这样有利于我们对接口的封装和使用,那些常规的参数我们通过公众号身份获取就可以了,业务信息,我们可以定义一个实体类来进行数据的存储交换即可。

C#开发微信门户及应用微信现金红包的封装及使用

对应上图的固定的常规参数,在接口说明中如下所示。

C#开发微信门户及应用微信现金红包的封装及使用

因此,这些信息我们从账号里面设置及获取即可,我们可以在管理后台对它们进行配置,然后在代码逻辑里面取出来使用即可。

C#开发微信门户及应用微信现金红包的封装及使用

C#开发微信门户及应用微信现金红包的封装及使用

根据上面的介绍,我们可以定义红包接口代码如下所示。

/// <summary>
    /// 微信红包(摇一摇红包)操作API
    /// </summary>
    public interface ILotteryApi
    {              
        /// <summa



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 关于编辑名片的详细介绍
  • 微信开发平台开发初探
  • 详解微信开发微信jsapi与java初步接入方法
  • PC端用.NET微信开发实现扫码注册和登录功能详解
  • 微信支付开发之沙箱密钥步骤详解
  • 关于跑步微信的详细介绍
  • 微信开发入门学习总结
  • nodejs微信公众号支付开发
  • 微信二次开发之各类型消息封装
  • asp.net微信开发已关注用户管理步骤详解

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 微信小游戏基于微信开发工具入门讲解
    • 微信小程序怎么实现数据双向绑定
    • 微信或手机浏览器在线显示office文件(已测试ios、android)
    • 使用Android实现微信小视频录制功能详细介绍
    • 检索kintone记录信息的方法
    • 超实用的大神级云端设计神器!
    • C#开发微信公众号接口开发详细介绍
    • 微信开发之2048游戏
    • 开发实战知乎日报的详细总结
    • 微信开发之解绑设备通知的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有