第一次独立开发微信公众号,碰壁期间使我一度丧失信心;好在都挺了过来,发现自己的抗压能力很强啊!接下来所写内容都是自己的总结,每个人可能有不同的看法,我只为自己记录和初入者参考。
-
一、环境准备
-
申请认证公众号
-
测试公众号开发
以上两步同时进行,因为申请认证公众号需要花费最多7个工作日时间,所以在申请认证同时,自己可以注册一个没有认证的公众号进行开发;我接到的是一个h5项目在测试公众号中配置自己的菜单测试页面
- 操作步骤:
-
申请服务器
将开发项目放置服务器中 (运维负责搭建服务器,然后将node项目和h5项目分别放置到对应的服务器中)
-
接口调用说明
1.测试接口调用仅支持80端口。
2.正式接口必须以http://或https://开头,分别支持80端口和443端口。
3.access_token存储512字符空间,有效期2小时,放在服务器端
4.接口返回码查看地址:微信开发文档---开发前必读--全局返回码说明
5.使用微信公众平台接口调试工具,测试接口的正确性
6.请登录“微信公众平台-开发-基本配置”提前将服务器IP地址添加到IP白名单中 (配置白名单的ip会有接口请求返回的ip将其配置到白名单中)
-
第一步:登录微信公众平台官网
微信公众号只能在PC端进行申请,在浏览器中搜索“微信公众平台”(https://mp.weixin.qq.com/)进入官网,点击登录框上方的“立即注册”
第二步:选择账号类型
根据需求选择订阅号,每天只能群发一次,输入你的邮箱帐号、邮箱验证码、密码,点击注册;
第三步:再次选择账号类型
上一步注册完成之后,选择注册地确定后;再一次选择帐号类型,这里有订阅号、服务号、企业微信三项可供选择,帐号类型一旦选择,无法更改。
第四步:信息登记
然后是用户信息登记,这里涉及到主体类型、主体信息登记、管理员信息登记、创作者信息等信息填写验证。
主体类型不同所需要的信息登记内容不同,主体类型:政府 媒体 企业 其他组织 个人
根据需求选择主体类型:企业
准备材料如下:
1.企业名称
2.营业执照注册号
3.验证方式:法定代表人验证 支付验证 微信认证
A.法定代表人验证:(1.法定代表人身份证姓名 2.法定代表人身份证号码 3. 法定代表人身份验证)
B.支付验证 ( 1.开户名称 2.开户银行 3. 对公账户 4.再次输入账户 5. 开户地点 6. 打款 7. 发送注册结果 8.退还打款 )
C.微信认证 (微信认证服务审核费300元/次/年)
4.管理员身份证姓名
5.管理员身份证号码
6.管理员手机号码
7.短信验证码
8.管理员身份验证
9.创作领域 (非必须,可不填)
10.创作平台(非必须,可不填)
11.创作者昵称(非必须,可不填)
12.证明资料(非必须,可不填)
13.证明链接(非必须,可不填)
第五步:提交公众号信息
最后填写提交公众号信息,如公众号名称、功能介绍等,就成功注册了微信公众号。
-
-
二、技术准备
-
网页授权获取用户基本信息
第一步:用户同意授权,获取code
第二步:通过code换取网页授权access_token
第三步:刷新access_token(如果需要)
第四步:拉取用户信息(需scope为 snsapi_userinfo)
以上第一步需要前端去获取code 之后第二、三步需要后台去获取用户信息;第四步根据后台接口地址拉取用户信息
-
客服消息
1. 开发者在响应包中返回MsgType为transfer_customer_service的消息
2. 微信服务器会先将消息POST到开发者填写的url上
3. 微信收到响应包msgType 会将发送消息转发至客服系统
本项目中使用node服务将自定义腾讯客服回复信息机器人,只需要在微信公众号中配置服务器地址并开启即可,前端不需要操作。
-
-
三、开发流程
1.回调地址1. 将 .txt文件放置在服务器根级目录下 (配置回调地址时,说明中有提示需要下载.txt放置到服务器中 即h5前端部署服务中)
2. 配置回调地址 (第一步 .txt文件配置完成后,配置服务器域名)
https://img2020.cnblogs.com/blog/2461593/202108/2461593-20210823142739801-1733131082.png
-
白名单配置
白名单中得ip地址 可通过 接口调试工具 获取access_token获取 ip地址 (正式配置白名单时,先去接口调试工具中请求access_token是否返回成功,否则会返回ip地址)
-
开启服务器
配置服务器得url地址、token、消息密钥、解密方式
-
菜单请求
Postman中请求接口开发菜单配置;(我的后台接口时node服务部署到正式环境之后,接口请求地址后条用) -
查看公众号
通过手机关注得公众号查看菜单以及客服消息是否为开发配置
-
-
四、注意事项
1. ios 视频适配
2. 开发菜单 数据格式Json (根据微信开发文档上菜单格式一致)
3. 提前将备份菜单并自动回复消息 -
五、问题
1. 客服消息不通过表现为:该公众号提供得服务出现故障,请稍后再试
解决: 在线接口调试工具测试access_token是否可以调通,根据code查看错误
2. 开发菜单无效表现:两个公众号开发菜单以及服务配置一致时,一个成功一个不成功
原因:白名单不统一
解决:将两个公众号中白名单配置统一 (我的项目时有两个公众号类型为服务号和订阅号;内容一致;所以需要同意白名单)