【文件属性】:
文件名称:微信公众平台(c#实现)
文件大小:12.09MB
文件格式:RAR
更新时间:2016-09-18 05:03:10
微信公众平台
Entities/Request*.cs 用于接收微信平台自动发送到服务器的实体(发送过来的是XML),包括文本、位置、图片三类
Entities/Response*.cs 用于反馈给发送人的信息实体(最终会转成XML),包括文本、新闻(图文)两类
Helpers/EntityHelper.cs 用于实体和XML之间的转换(由于其中有许多需要特殊处理的字段和类型,这里不能简单用XML序列化)
Helpers/MsgTypeHelper.cs 用于获取消息类型
CheckSignature.cs 验证请求合法性类
Enums.cs 各种枚举
RequestMessageFactory.cs 用于自动生成不同Request类型的实体,并作必要的数据填充
Senparc.Weixin.MP几个关键类及重要方法(按一般使用过程排序)
生成验证字符串:Senparc.Weixin.MP.CheckSignature.GetSignature(string timestamp, string nonce, string token = null),返回根据微信平台提供的数据,SHA1加密后的验证字符串(注意token必须跟公众平台的设置一直)
验证请求:Senparc.Weixin.MP.CheckSignature.Check(string signature, string timestamp, string nonce, string token = null),验证请求是否合法
获取请求实体:var requestMessage = Senparc.Weixin.MP.RequestMessageFactory.GetRequestEntity(XDocument doc); 根据不同请求的类型,自动生成可用于操作的实体(doc只需要用XDocument.Parse(xmlString)就能生成),requestMessage.MsgType就是请求枚举类型。
进行判断及各类操作。
根据需要,创建响应类型的实体,如:var responseMessage = ResponseMessageBase.CreateFromRequestMessage(requestMessage, ResponseMsgType.Text) as ResponseMessageText; 即可返回文本类型信息。
由于目前微信只接受XML的返回数据,所以在返回之前还需要做一次转换:XDocument responseDoc = Senparc.Weixin.MP.Helpers.EntityHelper.ConvertEntityToXml(responseMessage); var xmlString =responseDoc.ToString();
至此整个微信公众账号的自动响应过程结束。
下面可以直接下载源代码及示例(示例是ASP.NET MVC 4,.NET 4.0,为了提高兼容性,Senparc.Weixin.MP源代码使用.NET 3.5):
压缩包中包含三个文件夹:Senparc.Weixin.MP、Senparc.Weixin.MP.BuildOutPut、Senparc.Weixin.MP.Sample,分别对应Senparc.Weixin.MP.dll源代码项目、Senparc.Weixin.MP.dll输出目录、Web示例,Web示例建议放到公网测试,让公众平台自动发送
网友评论
- 不错 学习了
- 自己再做自己微信,正愁怎么下手,学习下,谢谢
- 一般吧,2013打不开,
- 资源不错,可以学习
- https://github.com/JeffreySu/WeiXinMPSDK 就是这个git
- 谢谢你啊 刚好在做相关的东西 刚才才在为整个程序架构烦恼
- 例子还不错.可以借鉴,,可以用这个架构 ,满方便的
- 谢谢分享!具有解释说明。
- 很不错的资源,值得参考。
- 资源那是相当赞!!!先努力研究下,做到微信开发入门
- 现在都还是用的vs2010。。。好麻烦
- 资源不错,很详细。
- 非常一般,谢谢了
- 封装的很好,作为类库可以直接在asp项目中使用
- 2012版本的VS
- 非常好值得参照,多谢
- 例子还不错.可以借鉴,,可以用这个架构
- 已经下载,还在学习中,谢谢!
- 希望楼主发布资源时,可以注明开发使用的版本,我下载了之后才发现是vs2012开发的,我用的还是vs2010,结果我只能现装一个2012才能看,不过内容还是很不错的,谢谢楼主
- 很有用,就是里边文件太多了。
- 好贵,而且还是vs2012的。。还是谢谢了
- 很有用。已经测试通过!
- 很有用。已经测试通过!
- 这个超好用,感谢分享。功能很全!
- 什么版本的打不开啊?
- 不错,可以使用的,在此基础上再进行改进就更完美了
- 最近搞微信平台开发,很给力!谢谢分享
- 资料不错,但是好像没有web实例呀?不知道是我没找到还是?
- URL怎么填写呢,新手,求指教
- 很有用。已经测试通过!