封面图
在第1篇中我们讲到了微信公众平台开发基础知识以及资料准备,在第2篇中我们讲到了如何架设本地web 服务器来调试自己的微信公众号服务。那么接下来我们讲下如何开启开发模式以及对接微信公众号服务。
在编辑模式有挺多的不方便,很多都得通过手动进行操作。比如说你要通过关键字回复,那么就得设置很多的关键字在上面。如果通过程序来模糊查询数据库,那么就很方便了。还有很多企业特定的一些需求,简单的编辑模式不能满足,这些只能是开发模式才能做到。
那么如何开启开发模式呢?
一、如何开启微信公众号开发模式
1) 公众平台官网登录之后,找到“基本配置”菜单栏。
公众号后台基本配置
设置界面如下:
微信正式后台设置界面
那么我来讲一下这几个参数的作用:
服务器地址(URL):填写自己外网能访问的接口,并且只能是80端口或者是443接口的网址。微信发送消息,可以通过此url进行校验以及验证。比如说:
令牌(Token):相当于我们的一个密钥字符。比如说:souvcweixin。注意哈,这个token是自主设置的,与公众平台wiki中常提的access_token不是一回事,这个token只用于验证开发者服务器。
消息加解密密钥(EncodingAESKey):ZFnfaQo0QMKv8EE2eTKmMSt29fNqtpa04OR1EfUKKzm
消息加解密方式:我们暂时通过明文模式进行开发。
以上我们是我们的正式环境的账号也是面向真正的用户的账号,那么我们开发用什么账号呢,可以通过微信提供的测试服务器来进行开发和测试工作。那么如何申请测试账号呢?
2)测试公众号配置设置。
开发工具选项
开发工具列表
信息设置
测试账号配置信息页面
上面的信息,不急着填,我们先来了解一下开发请求校验流程。
二、对接微信公众号服务器原理
对接微信公众号逻辑流程图
对接微信公众号逻辑流程图
开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址URL上,GET请求携带参数如下表所示:
参数 | 描述 |
---|---|
signature | 微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。 |
timestamp | 时间戳 |
nonce | 随机数 |
echostr | 随机字符串 |
开发者通过检验signature对请求进行校验(下面有校验方式)。
若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。加密/校验流程如下:
1)将token、timestamp、nonce三个参数进行字典序排序 。
2)将三个参数字符串拼接成一个字符串进行sha1加密 。
3)开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。
简单了解下,那么我们通过开发一个简单的校验项目来填写这些配置信息。
三、实现对接微信服务器
1)新建一个支持Maven的Java项目。
在weixin-servlet-01项目的基础上新建一个项目名称为weixin-servlet-02。如下图:
新建项目结构图
2)新建一个Servlet类,名称为CoreServlet。
CoreServlet用来接收微信服务器传来信息,校验是否是来自微信服务器的消息。
get方法来处理微信服务器传过来的参数。
接收微信服务器传古来的参数
post方法处理业务数据。
处理业务数据
3)新建一个工具类,名称为:SignUtil,用来封装校验的方法checkSignature。
单独定义了一个token字符串为souvcweixin,那么这个字符串不要公布给其他服务器,否则人家可以冒充你的服务器给微信发送消息。
如下图:
工具方法
4)在web.xml文件中添加访问路径。
如下图:
5)启动服务器,检验是否写对了,对接微信服务器。
通过mvn clean package来构建,打包应用,并通过命令mvn tomcat7:run 来启动应用。
6)首先我们先访问一下,HelloWorld程序能不能访问。
地址:http://localhost:8080/weixin-servlet/hello
7)启动外网映射工具。
在第二篇文章有介绍过这个工具,这里就不详细展开来讲了。
8)用微信登陆微信测试账号后台填写URL以及token进行校验。
填写url和token成功后,点击提交按钮。
URL:填写校验的项目路径/coreServlet 。注意这个路径相当于微信服务器能访问我们的这个路径,所以需要外网映射。
Token:签名中填写的字符串,我的是souvcweixin 。你们的token可以自定义。
如果信息错误,那么会报以下错误:
配置失败界面
如果填写信息正确,服务器也没有问题,那么会有以下提示:
配置成功界面
若提示”token验证失败”, 请认真检查代码或网络链接等。若token验证成功,会自动返回基本配置的主页面,点击启动按钮。
四、小结
这一节的内容就是我们自己写的服务器,通过一个共同约定的一些算法,进行校验,如果成功,那么说明就是达成一致,那么俩个服务器就是对接成功。如果大家看不懂的,可以暂时不用理会,不影响后面的开发工作,因为这个都是直接封装好,拿来用即可。
下一节的话,我们来讲讲如何封装回复消息,事件触发,响应消息。
推荐阅读
第1篇:微信公众平台开发基础知识以及资料准备。
第2篇 :架设本地web 服务器来调试自己的微信公众号服务。
1.文章《微信公众平台url和token怎么填》援引自互联网,为网友投稿收集整理,仅供学习和研究使用,内容仅代表作者本人观点,与本网站无关,侵删请点击页脚联系方式。
2.文章《微信公众平台url和token怎么填》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
相关推荐
- . 现代买票为什么带上携程保险
- . 潮阳怎么去广州南站
- . 湖南马拉河怎么样
- . 烧纸为什么到三岔路口
- . 百色为什么这么热
- . 神州租车怎么样
- . 芜湖方特哪个适合儿童
- . 护肤品保养液是什么类目
- . 早晚的护肤保养有哪些项目
- . 女孩护肤品怎么保养的最好