微信,想必大家都不陌生,像支付宝一样在悄悄的改变大家的生活方式。伴随着这种新的生活方式,越来越多的微服务也开始进入我们的生活,我们可以使用微信查询信用卡帐单、还款、支付,在最近的一次微信合作伙伴大会上,腾讯向公众服务号开放支付功能与九大高级接口,透过这些接口,开发者可以实现使用利用微信摇控电视、冰箱、洗衣机甚至电饭煲,使用微信的微支付功能,还能方便地在线购买电影票、手机充值、收看互联网电视付费节目等。
下面,就我个人的了解,简单讲述一下微信开发的第一步,如何与微信服务器对接。
想要涉足微信开发,第一步就是要申请一个微信公众号。公众号分为服务号和订阅号。服务号,故名思义,主要是对用户提供服务的,一般是企业或是服务行业用的比较多,功能相对订阅号要强大一些,可以自定义用户菜单;但也有不方便的地方,就是服务号一个月只允许发送一条群消息。订阅号,主要是提供信息和资讯,一般是媒体用的比较多,功能相对服务号要弱一些,但可以每天发送一条群消息。以下的讲述,都是以服务号为基础。
微信公众号申请好之后,我们还需要一个对外的WEB服务器,方便和微信服务器进行数据交互。这一步我就不细讲了,百度和新浪都提供这个服务。
登录微信公众平台(http://mp.weixin.qq.com),在左侧的导航菜单中选择“功能”--> “高级功能”, 微信为我们提供了两种“编辑模式”和“开发模式”,这两种模式互斥,即如果开启了“编辑模式”,则需要将“开发模式”关闭,反之亦然。“编辑模式”又称傻瓜模式,开发者可以直接在平台上定义菜单,设置自动回复等功能。这里定义的菜单功能比较弱,用户点击自定义菜单后,只能够回复信息或是打开一个网页,如果需要根据用户点击的菜单做一些其他动作,则需要使用到“开发模式”。
使用”开发模式“的前提是您必须申请成为开发者。
第一步需要指定接收微信服务器数据的URL,同时还需要指定一个TOKEN(由开发者任意填写,用于生成签名),用于接入时的验证。
第二步要验证您指定的URL的有效性,微信服务器会像您指定的URL发送一个GET请求,该请求携带四个参数。
signature | 微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。 |
timestamp | 时间戳 |
nonce | 随机数 |
echostr | 随机字符串 |
开发者通过检验signature对请求进行校验。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。
PHP检验代码如下。
<?php $wechatObj = new wechatCallbackAPI(); $wechatObj->valid(); class wechatCallbackAPI { private $token = "WEIXIN"; private $appId = "APPID"; private $appSecret = "APPSECRET"; private function checkSignature() { $signature = $_GET["signature"]; $timestamp = $_GET["timestamp"]; $nonce = $_GET["nonce"]; $tmpArr = array($this->token, $timestamp, $nonce); sort($tmpArr); $tmpStr = implode($tmpArr); $tmpStr = sha1($tmpStr); if($tmpStr == $signature) { return true; } else { return false; } } public function valid() { $echoStr = $_GET["echostr"]; //valid signature, option if($this->checkSignature()){ echo $echoStr; exit; } } } ?>
版权声明:本文为博主原创文章,未经博主允许不得转载。
相关推荐
微信开发——接入图灵机器人所需要的jar
在Unity游戏开发中,接入微信SDK是为了实现与微信平台的互动功能,比如用户登录、分享、支付等。本文将详细讲解如何在Unity中接入适用于Android平台的微信SDK。 首先,你需要下载微信官方提供的Android SDK。这个...
主要为大家详细介绍了php微信开发接入,通过检验signature对请求进行校验,感兴趣的小伙伴们可以参考一下
.NET接入微信接口,实现与微信用户的自动沟通,代码为C#代码, 前期配置工作请按照微信【新手接入】部分自行完成,要实现关于菜单部分的请按照微信查看即可,本代码不包含菜单部分开发,不过都是一样的
Java微信平台开发接入源码
微信开发SDK(Software Development Kit)则是一套完整的开发工具集,包含了各种库文件、文档、示例代码和调试工具,帮助开发者快速接入微信服务。SDK提供了对微信API接口的封装,简化了调用过程,使得开发者能够...
学习JavaWeb过滤器做了解,学习微信公众号接入以及基础认识,做一遍微信接入的demo出来。 建议完成工期:一周(即7天); 参考视频: http://www.imooc.com/learn/368 (初识Java微信公众号开发,约1.5h) ...
springMVC微信公众号接入实例,整合之后可以直接运行,不过要把2个id换成自己的,希望对刚做微信开发的小伙伴有帮助
至此,Unity2020版的安卓微信登录接入已完成,用户可以在安装了该APK的安卓设备上使用微信账号轻松登录游戏。请注意,实际过程中可能还需要处理一些特定问题,如微信登录回调的处理、错误码的解析等,务必参考微信...
微信公众号开发接入接口的具体步骤,博客有详细的记录步骤,有需要的伙伴可以自行下载哦~
基于python实现微信接入ChatGpt进行自动回复
此文档包含了c#与微信开发接口对接的所有代码,适合需要开发微信公共号接口的开发人员
在Unity游戏开发中,接入微信SDK能够为游戏增加丰富的社交功能,如分享、登录、支付等,提升用户体验并促进用户互动。本案例将详细介绍如何在Unity项目中集成微信SDK,以便实现这些功能。 首先,我们需要从微信开放...
微信公众号接入图灵机器人,实现微信公众号自定义开发
微信开发模式接入
本示例"微信SDK接入Unity demo"是针对如何在Unity项目中集成微信SDK的具体实践。 首先,我们要理解Unity中的插件集成过程。在Unity中,非原生的C#代码库(如.NET库)不能直接使用,因此我们需要通过特定的步骤将第...
- **兼容性好**:对于还在使用ASP的老系统,这种接口能帮助它们快速接入微信支付,提升用户体验。 - **易用性强**:接口通常提供了清晰的文档和示例代码,方便开发者快速理解和集成。 - **稳定性高**:由于是经过...
php客服在线IM源码,支持自动刷新(网页即时接收消息)+自动回复+可生成接入+手机版管理后台:弹窗接入,微信公众号接入,网页链接接入。 目前第三方在线客服系统,基本都是需要年费(几千一年),受到运营方各种...
在本文中,我们将深入探讨如何在Discuz论坛中利用DZ官方微信登录接口设置开发者中心URL和TOKEN,并将系统接入TOM微信运营平台,以便提升微信用户的登录体验和论坛的运营效率。 首先,让我们理解一下核心概念。微信...