付出微信门户及使用

By admin in 亚洲必赢app在哪下载 on 2019年1月14日

微信应用如火如荼,很多商行都期待搭上音讯快车,这些是一个商机,也是一个技能的倾向,因而,有空商量下、学习下微信的连带支付,也就改成计划的布局事情之一了。本序列小说希望从一个渐进的角度上,周密介绍微信的相干支出进程和有关经验总括,希望给我们探听一下连锁的开支进程。本篇小说紧要基于上一篇《C#支出微信门户及应用(1)–先河利用微信接口》的功底上展开深刻的牵线,介绍微信音讯的处理和回应的过程。

1、微信的消息应答交互

俺们领会,微信的服务器架起了客户手机和开发者服务器的一个大桥,通过音讯的传递和响应,实现了与用户的互动操作,上面是它的消息流程图。

亚洲必赢app在哪下载 1

微信向开发者服务器请求的音信包含了多连串型,不过基本来说,分为了文件信息处理、事件信息处理、语音音讯的辨认,以及成为开发者在此以前的可怜信息证实操作基本分类,下边是自我绘制的一个新闻分类图,其中介绍了这两种关系,以及分级的信息细化分类。

亚洲必赢app在哪下载 2

对于这个信息的乞求,我们在支付服务器端,需要编制相关的逻辑举办对应给的拍卖,然后给微信服务器平台回复音信即可。

在前一篇的小说里面我贴过代码,介绍微信音讯处理的输入操作,代码如下所示。

        public void ProcessRequest(HttpContext context)
        {
            //WHC.Framework.Commons.LogTextHelper.Info("测试记录");

            string postString = string.Empty;
            if (HttpContext.Current.Request.HttpMethod.ToUpper() == "POST")
            {
                using (Stream stream = HttpContext.Current.Request.InputStream)
                {
                    Byte[] postBytes = new Byte[stream.Length];
                    stream.Read(postBytes, 0, (Int32)stream.Length);
                    postString = Encoding.UTF8.GetString(postBytes);
                }

                if (!string.IsNullOrEmpty(postString))
                {
                    Execute(postString);
                }
            }
            else
            {
                Auth();
            }
        }

个中的Execute(postString);就是对信息的处理函数,它实现了对两样音信的分发处理过程。‘

        /// <summary>
        /// 处理各种请求信息并应答(通过POST的请求)
        /// </summary>
        /// <param name="postStr">POST方式提交的数据</param>
        private void Execute(string postStr)
        {
            WeixinApiDispatch dispatch = new WeixinApiDispatch();
            string responseContent = dispatch.Execute(postStr);

            HttpContext.Current.Response.ContentEncoding = Encoding.UTF8;
            HttpContext.Current.Response.Write(responseContent);
        }

亚洲必赢app在哪下载,里面的WeixinApiDispatch就是一个散发的管理类,它提取请求音信的始末,并构建不同档次的音讯参数,传递给不同的响应函数举办处理,然后回来封装好的XML内容,作为响应。

切切实实的代码处理逻辑如下图所示。

亚洲必赢app在哪下载 3

其一音信处理接口,其实就是概念好一文山会海的对请求信息的拍卖操作,参数是不同给的新闻对象,具体的代码定义如下所示(由于篇幅原因,省略有些接口,具体可以参考上图)。

    /// <summary>
    /// 客户端请求的数据接口
    /// </summary>
    public interface IWeixinAction
    {
        /// <summary>
        /// 对文本请求信息进行处理
        /// </summary>
        /// <param name="info">文本信息实体</param>
        /// <returns></returns>
        string HandleText(RequestText info);

        /// <summary>
        /// 对图片请求信息进行处理
        /// </summary>
        /// <param name="info">图片信息实体</param>
        /// <returns></returns>
        string HandleImage(RequestImage info);

...........................


        /// <summary>
        /// 对订阅请求事件进行处理
        /// </summary>
        /// <param name="info">订阅请求事件信息实体</param>
        /// <returns></returns>
        string HandleEventSubscribe(RequestEventSubscribe info);

        /// <summary>
        /// 对菜单单击请求事件进行处理
        /// </summary>
        /// <param name="info">菜单单击请求事件信息实体</param>
        /// <returns></returns>
        string HandleEventClick(RequestEventClick info);

..............................
    }

从下面的代码可以见见,不同的音信,到处理函数这里,就以不同的消息实体类的章程传递过来了(留神:实体类是本身依据程序开发需要团结定义的,非微信本身的实体类),那样不行有益大家处理操作,否则每回需要分析不同的信息内容,很容易并发问题,这样强类型的数据类型,提升了俺们付出微信应用的强壮型和高效性。这个实体类的对象有一定的接轨关系的,他们的接轨关系如下所示。

亚洲必赢app在哪下载 4

2、微信的管理接口

下面的音信分类是微信服务器向开发者服务器发送的音讯请求操作,还有一种信息,是我们开发者服务器向微信服务器进行的音讯请求或者响应,这种这里权且称之为微信的管理接口,它标志了俺们可以通过这多少个接口举办相关的音信回复或者数额管理操作。它的分类图如下所示。

亚洲必赢app在哪下载 5

微信的过来音讯处理,它也和下边小节的音信相同,它也是延续自BaseMessage实体类的(一样,下图的实体类及其继承关系也是自定义的,方便程序支付),它的涉嫌如下所示

亚洲必赢app在哪下载 6

平复的信息,一般用的最多的是文本音信和图文消息。

文本信息的机能如下所示。

亚洲必赢app在哪下载 7

图文音讯,可以扩大图片,还足以追加详细的链接页面,是非常美观的一种效用,对于有些情节相比多,希望呈现更好效益的,一般采用这种,效果如下所示。

亚洲必赢app在哪下载 8

 

C#支付微信门户及运用(25)-微信公司号的客户端管住效果

C#开发微信门户及应用(24)-微信小店货架音信保管

C#支出微信门户及运用(23)-微信小店商品管理接口的卷入和测试

C#支付微信门户及应用(22)-微信小店的开销和应用

C#付出微信门户及采用(21)-微信集团号的音讯和事件的收到处理及解密 

C#支出微信门户及利用(20)-微信公司号的菜单管理

C#支付微信门户及采纳(19)-微信集团号的信息发送(文本、图片、文件、语音、视频、图文音信等)

C#支付微信门户及运用(18)-微信集团号的通讯录管理支出之成员管理

C#开发微信门户及应用(17)-微信集团号的通讯录管理支付之部门管理

C#付出微信门户及接纳(16)-微信公司号的配备和采用

C#支付微信门户及利用(15)-微信菜单扩大扫一扫、发图片、发地理地点效用

 C#开发微信门户及使用(14)-在微信菜单中使用重定向获取用户数据

C#付出微信门户及利用(13)-使用地理地方扩充相关应用

C#支出微信门户及使用(12)-使用语音处理

C#开发微信门户及利用(11)–微信菜单的有余显示方法介绍

C#付出微信门户及使用(10)–在管制连串中协同微信用户分组信息

C#支付微信门户及运用(9)-微信门户菜单管理及提交到微信服务器

C#开发微信门户及使用(8)-微信门户应用管理体系效率介绍

C#支出微信门户及运用(7)-微信多客服功能及开发集成

C#支付微信门户及使用(6)–微信门户菜单的管制操作

C#付出微信门户及利用(5)–用户分组音信保管

C#支付微信门户及采用(4)–关注用户列表及详细信息管理

C#付出微信门户及利用(3)–文本音信和图文信息的作答

C#支出微信门户及采用(2)–微信音信的拍卖和回答

C#开发微信门户及利用(1)–起首使用微信接口

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 亚洲必赢app官方下载 版权所有