0

0

C#微信公众号开发 微信事件交互

高洛峰

高洛峰

发布时间:2017-01-17 10:42:51

|

1579人浏览过

|

来源于php中文网

原创

前言

一切准备工作就绪时就先实现一个关注公众号后向客户端推送一条消息。关注后推送消息需要一个get请求、一个post请求,get请求主要是为了向微信服务器验证,post请求主要就是处理微信消息了。 调接口时传递的appid和appsecret请传递自己公众号对应的参数。

微信事件交互

微信事件交互主要是向微信服务器推送XML数据包

C#微信公众号开发 微信事件交互

看代码

[HttpGet]
[ActionName("Index")]
public ActionResult Get(string signature,string timestamp,string nonce,string echostr)
{
  if (CheckSignature.Check(signature, timestamp, nonce, token))
  {
    return Content(echostr);
  }
  else
  {
    return Content("err");
  }
[HttpPost]
[ActionName("Index")]
public ActionResult Get(string signature, string timestamp, string nonce)
{
   StreamReader sr = new StreamReader(Request.InputStream, Encoding.UTF8);
   XmlDocument doc = new XmlDocument();
   doc.Load(sr);
   sr.Close();
   sr.Dispose();
  
   WxMessage wxMessage = new WxMessage();
   wxMessage.ToUserName = doc.SelectSingleNode("xml").SelectSingleNode("ToUserName").InnerText;
   wxMessage.FromUserName = doc.SelectSingleNode("xml").SelectSingleNode("FromUserName").InnerText;
   wxMessage.MsgType = doc.SelectSingleNode("xml").SelectSingleNode("MsgType").InnerText;
   wxMessage.CreateTime = int.Parse(doc.SelectSingleNode("xml").SelectSingleNode("CreateTime").InnerText);
  
   if (wxMessage.MsgType == "event")
   {
     wxMessage.EventName = doc.SelectSingleNode("xml").SelectSingleNode("Event").InnerText;
     if (!string.IsNullOrEmpty(wxMessage.EventName) && wxMessage.EventName == "subscribe")
     {
       string content = "您好,欢迎访问garfieldzf8测试公众平台";
       content = SendTextMessage(wxMessage, content);
       return Content(content);
    }
  }
      return Content("");
}
  
  
private string SendTextMessage(WxMessage wxmessage,string content)
{
   string result = string.Format(Message, wxmessage.FromUserName,wxmessage.ToUserName,DateTime.Now.Ticks, content);
   return result;
}
  
  
 public string Message
 {
   get
   {
     return @"
           
           
           {2}
           
           
         ";
      }
  }
public class WxMessage
 {
    public string ToUserName { get; set; }
    public string FromUserName { get; set; }
    public long CreateTime { get; set; }
  
    public string Content { get; set; }
    public string MsgType { get; set; }
    public string EventName { get; set; }
    public string EventKey { get; set; }
 }

总结

SOPHP免费微信开源框架
SOPHP免费微信开源框架

SOPHP是一款稳定开源的微信公众平台开发系统,也是基于weiphp开发的第一款商业系统。依托自身强大的钩子功能,她可以帮助大家快速开发出自己想要的微信功能插件,运营近两年来我们收获了上千用户与良好的口碑。作为一个开源产品,希望大家都能参与进来为SOPHP添砖加瓦,SOPHP团队一直都在致力于让SOPHP更加优秀。

下载

     开发微信接口的过程中不能调试,唯一排除问题的方式就是在关键的地方记log。

     微信事件交互主要是分析微信发送的xml数据包,解析xml,并按照消息指定格式拼接xml发送给response。在Get方法里用到的CheckSignature 是盛派微信SDK的一个类,也就是对签名校验。

     向客户端发送消息时主要ToUserName和FromUserName。我一开始把两个参数写反了导致客户端收不到消息。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持PHP中文网。

更多C#微信公众号开发 微信事件交互相关文章请关注PHP中文网!

相关文章

微信app下载
微信app下载

微信是一款手机通信软件,支持通过手机网络发送语音短信、视频、图片和文字。微信可以单聊及群聊,还能根据地理位置找到附近的人,带给大家全新的移动沟通体验,有需要的小伙伴快来保存下载体验吧!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
java学习网站推荐汇总
java学习网站推荐汇总

本专题整合了java学习网站相关内容,阅读专题下面的文章了解更多详细内容。

6

2026.01.08

java学习网站汇总
java学习网站汇总

本专题整合了java学习网站相关内容,阅读专题下面的文章了解更多详细内容。

0

2026.01.08

正则表达式 删除
正则表达式 删除

本专题整合了正则表达式删除教程大全,阅读专题下面的文章了解更多详细教程。

20

2026.01.08

java 元空间 永久代
java 元空间 永久代

本专题整合了java中元空间和永久代的区别,阅读专题下面的文章了解更多详细内容。

3

2026.01.08

java 永久代和元空间
java 永久代和元空间

本专题整合了java中元空间和永久代的区别,阅读专题下面的文章了解更多详细内容。

0

2026.01.08

java成品网站源码资源大全
java成品网站源码资源大全

本专题整合了java成品网站源码相关内容,阅读专题下面的文章了解更多详细内容。

9

2026.01.08

java过滤器教程大全
java过滤器教程大全

本专题整合了java过滤器相关教程,阅读专题下面的文章了解更多详细内容。

4

2026.01.08

作业帮网页版入口地址大全
作业帮网页版入口地址大全

本专题整合了作业帮网页版地址整理,阅读专题下面的文章了解更多详细内容。

4

2026.01.08

学习通网页版入口地址大全
学习通网页版入口地址大全

本专题整合了学生通网页版入口相关整理,阅读专题下面的文章了解更多详细内容。

19

2026.01.08

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
微信小程序开发之API篇
微信小程序开发之API篇

共15课时 | 1.2万人学习

ECMAScript6 / ES6---十天技能课堂
ECMAScript6 / ES6---十天技能课堂

共25课时 | 1.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号