首先,注册一个微公众号,
注册地址();@1
其中里边定义的token跟我们在测试号管理里的 接口配置信息中的token一致,我们每次修改完下载的那个demo的时候,都需要点击修改接口配置信息,如果代码有误的话,是修改不成功的,常见的错误一般在于多一个空格或者,中英文符号问题。
注册地址();@1
微信公众号可以做什么
可以自动回复消息(包括文本消息,图文消息,视频,语音)@2
微信公众号与微信公众平台与测试号
我们做微信公众号开发学习的时候,一般不用微信公众平台来开发,因为我们用第三方接口的话,微信公众平台就不能用了,而且,可用接口很少,所以,在开发者工具里有一般不用微信公众平台来开发,这里边的很多接口都可以使用,而且无上限,因为他跟微信公众平台不一样,需要再次登陆使用。 可以根据里边提供的接口文档进行开发学习(公众平台开发文档)。@3
开发的时候主要分为3步:
1. 填写服务器配置
2. 验证服务器地址的有效性
3. 依赖接口文档实现业务文档逻辑
其中验证服务器有效性的时候,微信中给了我们一个demo,通过下载,进行使用,
这个里边可以帮助我们更好的进行开发
第一步:验证服务器地址的有效性
登录微信公众平台官网后,在公众平台后台管理页面 - 开发者中心页,点击“修改配置”按钮,填写服务器地址(URL)、Token和EncodingAESKey,其中URL是开发者用来接收微信消息和事件的接口URL。Token可由开发者可以任意填写,用作生成签名(该Token会和接口URL中包含的Token进行比对,从而验证安全性)。EncodingAESKey由开发者手动填写或随机生成,将用作消息体加解密密钥。其中里边定义的token跟我们在测试号管理里的 接口配置信息中的token一致,我们每次修改完下载的那个demo的时候,都需要点击修改接口配置信息,如果代码有误的话,是修改不成功的,常见的错误一般在于多一个空格或者,中英文符号问题。
第二步:验证服务器地址的有效性
开发者通过检验signature对请求进行校验(下面有校验方式)。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。
checkSignature()为验证的方法;一般在学习的会后我们先‘屏蔽’这个验证,为了方便学习,
第三步:依据接口文档实现业务逻辑
下边我们来学习几个简单的接口
获取access token
access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效,access_token的每日调用有限制为2000次。为了后期的开发我们可以根据缓存进行缓存来解决token失效接口调用请求说明
http请求方式: GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET参数说明
参数 | 是否必须 | 说明 |
---|---|---|
grant_type | 是 | 获取access_token填写client_credential |
appid | 是 | 第三方用户唯一凭证 |
secret | 是 | 第三方用户唯一凭证密钥,即appsecret |
返回说明
正常情况下,微信会返回下述JSON数据包给公众号:
{"access_token":"ACCESS_TOKEN","expires_in":7200}
参数 | 说明 |
---|---|
access_token | 获取到的凭证 |
expires_in | 凭证有效时间,单位:秒 |
错误时微信会返回错误码等信息,JSON数据包示例如下(该示例为AppID无效错误):
{"errcode":40013,"errmsg":"invalid appid"}
被动回复用户消息
responseMsg 为消息回复方法
各消息类型需要的XML数据包本文仅文本消息为例。
回复文本消息
<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>12345678</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[你好]]></Content> </xml>自定义菜单创建接口
1、自定义菜单最多包括3个一级菜单,每个一级菜单最多包含5个二级菜单。 2、一级菜单最多4个汉字,二级菜单最多7个汉字,多出来的部分将会以“...”代替。 3、创建自定义菜单后,由于微信客户端缓存,需要24小时微信客户端才会展现出来。测试时可以尝试取消关注公众账号后再次关注,则可以看到创建后的效果。接口调用请求说明
http请求方式:POST(请使用https协议)https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN
未完待续,。。。