Senparc.Weixin.MP SDK的相关说明

1.执行过程

    1.1  以Request.InputStream和maxRecordCount为参数建立CustomMessageHandler

               var messageHandler = new CustomMessageHandler(Request.InputStream,10);

    备注:(1)CustomMessageHandler重写了抽象类MessageHandler,在其中重写各种Request的处理方法,具体化了各种类型Request的处理。

             (2)CustomMessageHandler包括几个重要的部分:

                 1.GlobalWeixinContext:每当服务器开始运行的时候,就建立这个对象,知道服务器关闭。它保存着所有与这台服务器进行对话的用户的消息记录上下文。尽管每次有一个Post请求发到服务器上,都建立一个CustomMessageHandler对象,但是GlobalWeixinContext对象为各个建立的CustomMessageHandler对象所共享。

                  2.WeixinContext:包含MessageContent的集合MessageCollection和队列MessageQueue,这两个元素中分别存储着对应着不同OpenId的MessageContent对象,MessageContent对象包含两个MessageContainer分别用于存储这个用户的请求和服务器对他的回复信息。在建立CustomMessageHandler的时候将请求信息加入请求信息容器,在执行Execute()的时候将服务器的返回信息添加到回复信息容器中。

                  3.CurrentMessageContent::每当通过Request.InputStream 建立Request.InputStream建立一个CustomMessageHandler对象的时候,通过获得Request的OpenId寻找到这个用户对应的存储在GlobalWeixinContext中的MessageContent。如果因为这个用户的最新请求的时刻距离现在超过了expires(这时候这个用户对应的MessageContent被删除),则重新建立一个对应此用户的MessageContent。

     1.2 Execute()  根据用户所发出的请求的类型执行相应的回复函数。

 备注:(1)各个相对应的回复函数以各种类型的(RequestMessage____)为参数,返回IResponseMessageBase;

            (2)在各个回复函数中首先创建特定类型的responseMessage,如下之后再根据Entities的各个对象的定义添加各个属性。

                var responseMessage = CreateResponseMessage<ResponseMessageNews>();


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值