C#微信公众号与订阅号接口开发示例代码
using System;//转载请注明来自 http://www.uzhanbao.com
using System.Web;
using System.IO;
using System.Text;
using System.Web.Security;
using weixin_api;
public class wxgz_api : IHttpHandler
{public void ProcessRequest(HttpContext context){context.Response.ContentType = "text/plain";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);Handle(postString);}}else{//微信进行的Get测试(开发者认证)WxAuth();}}/// <summary>/// 处理信息并应答/// </summary>private void Handle(string postStr){messageHelp help = new messageHelp();string responseContent = help.ReturnMessage(postStr);HttpContext.Current.Response.ContentEncoding = Encoding.UTF8;HttpContext.Current.Response.Write(responseContent);}#region 微信验证public void WxAuth(){string token = "xxxxxxxx";if (string.IsNullOrEmpty(token)){return;}string echoString = HttpContext.Current.Request.QueryString["echostr"];string signature = HttpContext.Current.Request.QueryString["signature"];string timestamp = HttpContext.Current.Request.QueryString["timestamp"];string nonce = HttpContext.Current.Request.QueryString["nonce"];if (CheckSignature(token, signature, timestamp, nonce)){if (!string.IsNullOrEmpty(echoString)){HttpContext.Current.Response.Write(echoString);HttpContext.Current.Response.End();}}}/// <summary>/// 验证微信签名/// </summary>public bool CheckSignature(string token, string signature, string timestamp, string nonce){string[] ArrTmp = { token, timestamp, nonce };Array.Sort(ArrTmp);string tmpStr = string.Join("", ArrTmp);tmpStr = FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, "SHA1");tmpStr = tmpStr.ToLower();if (tmpStr == signature){return true;}else{return false;}}#endregionpublic bool IsReusable{get{return false;}}
}
C#微信公众号与订阅号接口开发示例代码相关推荐
- 微信公众账号的订阅号与服务号有什么区别?
也可以参考官方文档http://kf.qq.com/product/weixinmp.html#hid=hot_faq 一.微信公众平台服务号 1.微信公众平台服务号,顾名思义,主要是给客户提供服务的 ...
- 微信公众平台的订阅号和服务号有什么不同?各自有什么优缺点?
原文出处: http://zhidao.baidu.com/question/579900764.html?qbl=relate_question_4 服务号 1.1个月(30天)内仅可以发送1条群发 ...
- php微信个性化菜单,微信公众平台新增个性化菜单接口,实现公众号
为了帮助公众号实现灵活的业务运营,微信公众平台新增个性化菜单接口. 如何开通微信公众平台个性化菜单接口 目前只对已通过认证的微信订阅号和服务号开放. 在此之前的微信订阅号和服务号是只能按照微信公众平台 ...
- 微信公众号_订阅号+服务号开发工具包-翟东平-专题视频课程
微信公众号_订阅号+服务号开发工具包-15114人已学习 课程介绍 "微信公众平台深度开发Java版 v2.0"系列课程共有6季,使用JAVA语言,系统讲解微信公众 ...
- 公众号、订阅号与服务号区别(微信5.0以上)
微信5.0升级后分成了服务号和订阅号,分别是什么意思?区别是什么? 一.服务号.订阅号的介绍(区别) 微信公众平台现在已分成订阅公众号和服务公众号两种类型. 公众平台服务号,是公众平台的一种帐号类型, ...
- 微信服务号,公众号,订阅号
公众号: 分 订阅号,服务号. 订阅号: 面对个人,订阅号主要功能是发文章,一天发一篇,但其他功能较少 ,没法使用支付功能,也不能网页授权,只能弄个消息回复. 服务号: 面对企业/公司,要交钱,主要功 ...
- 微信公众号开发1——服务号和订阅号,启用开发模式
公众账号分为:服务号和订阅号 服务号是面向企业和组织,主要是为用户提供服务,如:西安交警,平安南航,每月只能群发一条消息:服务号发送消息会显示在用户通讯录中 订阅号是面向媒体和个人,主要是为用户提供信 ...
- 微信公众平台的服务号和订阅号
微信公众平台 服务号 订阅号 作者:方倍工作室 地址:http://www.cnblogs.com/txw1958/p/ServiceNumber-subscriptionNumber.html ...
- 微信公众平台与微信开放平台的区别、服务号、订阅号、企业微信的区别
微信公众平台 vs 微信开放平台 微信公众平台是介绍公众号相关的内容,比如服务号.订阅号.企业微信,所以叫微信公众平台:公众平台也是公众号的管理端,可以编辑推送文章,通常是公众号的运营.开发登录: 微 ...
- 微信服务号和订阅号的五大区别,如何选择申请微信公众号
微信公众号分个人和企业两种,目前个人只能申请订阅号,而且不能认证. 企业微信分为服务号和订阅号,服务号每个月只能推送4篇文章,订阅号每天都可以推送文章. 但是服务号的权限要比订阅号的权限要大. 微信服 ...
最新文章
- LeetCode简单题之使每位学生都有座位的最少移动次数
- 欧盟AI道德准则草案出炉
- 以太网输入输出处理的实现
- [云炬创业学笔记]第二章决定成为创业者测试15
- 《C语言编程——零基础初学者指南(第3版)》一第1章 什么是C程序设计1.1 什么是程序...
- 广度优先遍历算法-01寻找制高点问题
- 4g伪基站如何实现的
- 【Codeforces576E_CF576E】Painting Edges(可撤销并查集+线段树分治)
- 两组数据的偏差怎么算_数据随机性,如何利用游程检验来检测?
- 深度解读B2B与B2C营销策略的差异
- 后台界面也可以很酷!31个高大上的后台管理系统模版
- AssertionError: Torch not compiled with CUDA enabled
- Secure Multiparty Computation (MPC)
- 网站备案各个管局的审核时间多久?
- 小米Max详细刷成开发版开启Root超级权限的经验
- CNN with Attention---channal and spatial attention(转)
- 前端打包之后 运用nginx反向代理运行项目
- Acrobat 删除pdf页面
- Obsidian+SyncTrayzor打造个人文档云同步平台
- 软件测试之独步武林系列(一)