微信SDK开发——接口接入

园子里面很多关于微信接口开发的文章,Github也一堆的开源代码。

官方文档地址:http://mp.weixin.qq.com/wiki/home/index.html

接下来主要以代码为主,接口说明自己去看文档

验证接入需要一个80端口的外网服务器地址,在填写地址,Token信息之后,程序会验证接入

验证会像就扣地址通过GET的方式发送几个数据:

signature,timestamp, nonce, echostr(该参数仅仅在验证接入时候会带上)

接下来就是你服务端接口验证签名的可用性了,加密是根据前面三个参数进行排序然后通过SHA1方式加密

排序代码:

List<string> StrArr = new List<string>();
            StrArr.Add(token);
            StrArr.Add(timestamp);
            StrArr.Add(nonce);
            StrArr.Sort();
            string Str = string.Empty;
            StrArr.ForEach(s =>
            {
                Str = string.Concat(Str, s);
            });
            Str = StrArr.Aggregate((prev, next) =>
            {
                return prev + next;
            });
            Str = Encrypt.Sha1(Str);
            return string.Compare(Str, signature, true) == 0;

  

中间用到的SHA1加密方法代码:

public static string Sha1(string str)
        {
            SHA1 sha = new SHA1CryptoServiceProvider();
            ASCIIEncoding asci = new ASCIIEncoding();
            byte[] data = asci.GetBytes(str);
            byte[] hashdata = sha.ComputeHash(data);
            return BitConverter.ToString(hashdata).Replace("-", "");
        }

  验证OK,返回服务器传递过来的echostr的值就行了,这样就算验证通过了~

以后接微信调用该接口不会有echostr参数!

我一般用MVC做开发

Controller如下

public ActionResult Index(string signature, string timestamp, string nonce, string echostr)
        {
            bool valid = CheckSignature(signature, "token", timestamp, nonce);
            if (!valid) return Content("接口接入失败,请验证令牌是否正确!");
            if (!string.IsNullOrEmpty(echostr)) return Content(echostr);
            if (Request.InputStream.Length <= 0) return Content("请POST请求!");
            //接下来你自己的业务逻辑
        }

  到这里基本微信的接入已经实现~ Enjoy it!

时间: 2024-10-03 22:54:27

微信SDK开发——接口接入的相关文章

微信SDK开发学习第三课

等了一天,审核终于通过了. 上节课用的是官方Demo,这节课就开始自己写代码来实现朋友圈分享功能吧! 实战朋友圈分享功能 1. 点击查看AppID以及审核成功后获取的接口权限. 2. 新建安卓工程 这里我们先新建一个包名为"com.xingyun.WebChatDemo01"的安卓工程. 3.下载微信终端开发工具包 https://res.wx.qq.com/open/zh_CN/htmledition/res/dev/download/sdk/WeChatSDK_Android221

微信SDK开发学习第一课

1.为什么学习微信API开发? 微信注册用户6亿,把微信当做推广平台已经成为主流. 2.微信SDK主要功能有哪些? 主要功能:分享给朋友,分享到朋友圈 3.如何使用微信SDK? 3.1 打开微信SDK主页注册账号:https://open.weixin.qq.com/ 3.2 点击管理中心-->移动应用-->创建移动应用:填写基本信息 移动应用名称:微信SDK学习第一课 英文名称(选填):WebChat SDK interface to learn one. 移动应用简介:学习微信开发第一课

微信sdk开发

前段时间部门要做一个活动,在微信实现.具体涉及到一下几个功能点:获取用户基本信息,判断用户是否关注我们公众号,自定义分享链接(包括朋友圈和好友),图片上传. 先说配置微信API,怎么在公众号后台配置,微信的文档已经很全面了:http://mp.weixin.qq.com/wiki/17/2d4265491f12608cd170a95559800f2d.html,需要说明的就是,url是完整的域名,不要带后面的参数.因为分享和上传都是jssdk的内容,所以还需要在公众号后台配置,参考:http:/

微信SDK开发学习

public class MainActivity extends Activity { // 应用程序的id,就是在网上开发平台创建应用的appid public static final String APP_ID = "wx00e5fafe00473016"; // 微信api的访问变量 private IWXAPI iwxapi; private CheckBox mshareFriends; @Override protected void onCreate(Bundle s

微信公众平台功能开发(微信小店接口)

微信公众平台本次更新增加了微信小店功能,微信小店基于微信支付,包括添加商品.商品管理.订单管理.货架管理.维权等功能.不过此功能只能服务号才有,支付方式有微信支付和支付宝支付,唯一缺点就是所有的模块全部是一样的,容易产生视觉疲劳,上下架商品不是很方便,不过听适合想在微信开店的朋友们. 微名汇:http://weixin.zgtuango.com 联系QQ:44653139 开发者可以通过小店接口来实现快速开店,目前支持以下接口: 1.商品管理接口 开发者可通过商品管理接口,来增加商品.删除商品.

微信公众平台开发接口PHP SDK完整版

原文:微信公众平台开发接口PHP SDK完整版 官方提供的SDK只有一个文本消息功能,我们将所有消息的消息类型及事件响应都整理了进来,并且加入日志记录,代码如下: 更新日志: 2013-01-01 版本1.02014-03-15 增加图片.视频.语音的内容回复2014-04-09 增加菜单链接事件2014-04-10 修改文本回复的判定方法2014-05-20 增加高级群发消息通知事件2014-05-26 增加多客服消息及多客服的判定方法2014-05-27 修改自动回复判定方式2014-06-

微信公众平台开发接口PHP SDK

以前没接触过微信公众平台开发,前几天刚找到实习公司就要求我做一个微信公众平台的应用,于是乎开始学习微信公众平台开发接口的调用,看开发文档之后还是不知道从何入手,只好上网找入门资料,终于在方倍工作室找到了完整的SDK,理解了思路之后其实也挺简单的,无非就是进行用户.微信服务器.开发者服务器三者之间的通信.下面是我参考方倍工作室SDK之后之间写的一个SDK,主要是响应文本消息和CLICK按钮消息,获取用户基本信息,当然并没有包含所有的消息类型和事件.更完整的SDK请参考方倍工作室,链接:http:/

微信支付SDK开发教程

今天研究了一下微信的SDK开发教程,下面我就简单的把步骤介绍下,希望对你们有所帮助 现在的支付都是使用V3接口的,2014年9月之前都是使用V2接口,现在我就介绍下V2和V3接口的申请方法吧 一.微信支付v2 1. 使用网页授权接口 使用网页授权接口获取用户的基本信息. [微信公众号]OAuth2.0授权.pdf点击下载 2. 使用共享收货地址控件 使用共享收货地址控件,获取用户在微信的收货地址.[微信公众号支付]收货地址共享接口文档V1.6.pdf点击下载 3. 使用公众号发起支付请求 使用J

【转】微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引

微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引 Senparc.Weixin.MP SDK从一开始就坚持开源的状态,这个过程中得到了许多朋友的认可和支持. 目前SDK已经达到比较稳定的版本,这个过程中我觉得有必要整理一些思路和经验,和大家一起分享.也欢迎大家的补充! SDK还在不断优化升级中,开源项目见:https://github.com/JeffreySu/WeiXinMPSDK 微信技术交流社区:http://www.weiweihi.com/QA Senparc