微信公众号的调试与测试

作者:杨广辉

image

一、微信公众号简介

1、微信公众号介绍

微信公众号是开发者或商家在微信公众平台上申请的应用账号,该帐号与QQ账号互通,通过公众号,商家可在微信平台上实现和特定群体的文字、图片、语音、视频的全方位沟通、互动 。微信公众号主要面向名人、政府、媒体、企业等机构推出的合作推广业务。在这里可以通过微信渠道将品牌推广给上亿的微信用户,减少宣传成本,提高品牌知名度,打造更具影响力的品牌形象。

2、微信公众号类型

(1) 订阅号:为媒体和个人提供一种新的信息传播方式,构建与读者之间更好的沟通与管理模式。主要偏于为用户传达资讯(类似报纸杂志),认证前后都是每天只可以群发一条消息。

image

(2) 服务号:给企业和组织提供更强大的业务服务和用户管理能力,帮助企业快速实现全新的公众服务平台。主偏于服务交互(类似银行,114,提供服务查询),认证前后都是每个月可群发4条消息。

image

(3) 企业号:为企业和组织提供移动应用入口,帮助企业建立与员工、上下游供应链及企业应用间的连接。主要用于公司内部通讯使用,需要先有成员的通讯信息验证才可以关注成功。

image

3、不同类型公众号的功能区别

不同类型的公众号所具备的功能权限是不一样的,主要区别在:

image

4、微信公众号注册认证:

个人、组织、公司都可以申请订阅号,服务号和企业号必须是组织或公司才能够申请。微信认证服务审核费300元/次/年。

image

二、微信公众号的调试与测试

1、微信公众号交互流程

image

 

微信用户给微信公众号发送信息之后,消息到达微信服务器被处理成XML数据包并转发给开发者服务后台(URL),开发者服务器接收到数据包之后就会把用户信息经过一些列的逻辑处理并将应答结果发送给微信服务器,最后微信服务器将信息推送给用户。

数据交互的流程:用户发送消息—到达微信服务器—转发给开发者服务器—转送微信服务器—推送给用户

2、微信公众号开发模式

微信公众平台为公众号提供了一些基本的功能模块,比如自定义公众号菜单、自动回复等,但是限制比较大,不一定能够满足应用需求,需要用户自己开发。

image

对于微信公众号的开发,需要有一定的代码开发能力,过程比较复杂,但是配置灵活、功能丰富,能极大的满足应用需求。

对微信进行开发之前,需按照要求完成配置并启动服务器配置,完成之后就可在URL对应的服务器上进行开发。在启动开发模式之后,微信公众号系统定义的自动回复与自定义菜单等均失效。

image

字段解释说明:

AppId:应用ID,微信开发者编号,在微信中主要用于创建微信菜单等

AppSecret:应用密匙,与AppID相配合的,可理解为这是私密的应用编号。

URL:外部服务所在的地方,当被启用时,微信公众号的自定义菜单、自动回复等均失效,所有的用户请求操作由微信服务器转发到URl所在的服务进行解析响应。

Token:两台服务器之间的密钥,它可以让公众账号服务器确认请求是来自微信后台还是恶意的第三方。

3、微信平台公众测试账号

微信服务号的申请认证是一个时间周期较长的过程,而不同的公众号类型又有不同的接口权限,具体情况如下表所示:

接口名称

未认证订阅号

微信认证订阅号

未认证服务号

微信认证服务号

基础支持-获取access_token

基础支持-获取微信服务器IP地址

接收消息-验证消息真实性、接收普通消息、接收事件推送、接收语音识别结果

发送消息-被动回复消息

发送消息-客服接口

 

 

发送消息-群发接口

 

 

发送消息-模板消息接口(发送业务通知)

   

用户管理-用户分组管理

 

 

用户管理-设置用户备注名

 

 

用户管理-获取用户基本信息

 

 

用户管理-获取用户列表

 

 

用户管理-获取用户地理位置

   

用户管理-网页授权获取用户openid/用户基本信息

   

推广支持-生成带参数二维码

   

推广支持-长链接转短链接口

   

界面丰富-自定义菜单

 

素材管理-素材管理接口

 

 

智能接口-语义理解接口

   

多客服-获取多客服消息记录、客服管理

   

微信支付接口

   

需申请

微信小店接口

   

需申请

微信卡券接口

 

需申请

 

需申请

微信设备功能接口

   

需申请

微信JS-SDK-基础接口

微信JS-SDK-分享接口

 

 

微信JS-SDK-图像接口

微信JS-SDK-音频接口

微信JS-SDK-智能接口(网页语音识别)

微信JS-SDK-设备信息

微信JS-SDK-地理位置

微信JS-SDK-界面操作

微信JS-SDK-微信扫一扫

微信JS-SDK-微信小店

   

微信JS-SDK-微信卡券

 

 

微信JS-SDK-微信支付

   

微信平台公众测试账号的优势:

1、 测试公众号拥有所有的接口使用权限,不用等待公众服务号的申请、认证,直接进行相关的开发测试。

2、 对已有公众号,可在测试号上先对新开发功能进行测试验证,待功能稳定之后再添加到公众服务号上。

image

image

微信测试公众号的缺点:

1、调用接口的频率限制次数远小于正常的服务号。

2、粉丝不能超过100人,使用期限为1年。

4、微信公众号的调试测试

(1) 微信公众平台接口调试工具

微信公众平台接口调试工具是微信官方提供的,其目的是帮助开发者检测调用微信公众平台开发者API时发送的请求参数是否正确,提交相关信息后可获得服务器的验证结果。

1)access_tocken获取

在使用接口调试工具时,首先通过appid和secret获取access_tocken, access_token是全局唯一接口调用凭据,公众号调用各接口时都需使用access_token,access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。参数如下图填写所示,在请求发出之后,得到的微信服务器应答,应答结果包含了access_tocken与其有效期。

image

image

2)消息接口调试

消息信息调试如下图所示,用户向公众号发出信息操作请求,其中请求参数列表包括URl,为服务所在的地方,即开发后的接口地址。请求发出时会将信息推送到该服务地址上,然后服务后台根据接收到的操作请求,做出相应的应答,并返回应答码。

image

返回结果

image

优点:

调试方便,可以验证请求参数与应答信息。

缺点:

只有返回码,没有直观的微信页面模拟显示,对命令参数要比较熟悉。

2、 微信调试器(方倍工作室)

微信调试器是方倍工作室开发的用于微信公众平台接口开发调试的工具,具有Token校验、模拟关注及取消关注、发送文本/图片/语音/视频/位置/链接、模拟事件发送等功能。调试器地址:http://debug.fangbei.org/

image

优点:

调试简单,带有信息发送请求模板,结果页面模拟显示。

缺点:

可调试的接口数目较少。

总结:

微信公众号只是一个媒介平台,通常公众号只是用来使用微信提供的接口获取用户的唯一表示、地域、微信相关的信息等传递给使用者的应用,因此,主要的测试工作还是测试使用者服务本身。通常我们只需要截获或模拟微信公众号发送的请求(少量的几个入口),重放或重新组织,以达到模拟从微信带参跳转,即可达到mock的目的,从而只关注使用者自身的应用的测试即可。

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨不羁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值