公众号小程序关联发送模板消息

概念步骤理解:

首先,需要拥有一个小程序,与服务号类型的公众号(我理解是,公众号分为服务号与订阅号,这里发送模板消息,需要服务号),且微信小程序与公众号都需要客户认证通过!

其次,需要客户,去登录《微信开放平台》(如没有需要申请,需要相关公司证件),将需要关联发送消息的小程序与公众号进行绑定,绑定关系可以多对多;

需要注意,

  1. 微信小程序与微信用户之间有一个openid(此微信小程序与此微信用户的永远不变的唯一码);

  1. 微信公众号与微信用户之间有一个openid(此微信公众号与此微信用户的唯一不变的唯一码);

  1. 如通过《微信开放平台》将此小程序与此公众号绑定之后,微信小程序与微信公众号将产生一个unionID(此微信小程序与此微信公众号的唯一不变的唯一码,疑点:重新绑定后unionID是否会改动?个人觉得很大可能会改变,这个需要注意)

  1. 自此,我们可以通过访问微信小程序或者访问微信公众号,拿到对应的openid与unionid,

后,与用户关联起来,这样就打通了小程序与公众号互动的渠道。

技术:

前提:

无论微信小程序或者微信公众号,接口的起源,都需要对应的appid与secret,

都可去登录《微信公众平台》的基本配置中,进行获取;

获取微信小程序与微信公众号的access_token:

上述获取到 appid与secret 之后,我们需要获取一个接口常用的参数,access_token;

微信小程序与微信公众号 获取 access_token 都是用的同一个接口;

接口调用请求说明

https请求方式: GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

官方技术文档:

微信开放文档

请注意,access_token 不要频繁获取,有概率会造成数据混乱与异常,access_token的有效期都是为2个小时,个人建议两个小时以内(自行斟酌具体时间)获取一遍,存与系统参数,后续需要用直接从数据库get

获取微信用户与微信小程序的openid 与 对应 unionid:

官方技术文档:

微信小程序获取openID及unionID | 微信开放社区

注意点:去《微信公众平台》登录小程序,拿到小程序的appid与对应的secret,通过小程序wx.login函数拿到user.code,这样调用接口的三个参数就齐全了,具体看官方文档;

获取微信用户与微信公众号的openid与对应unionID:

由于微信公众号无需开发,故此注意微信公众平台配置与后台接口即可;

首先需要开发者先去关注《公众平台安全助手》,然后开发者再关注客户的服务号,再然后客户操作服务号,邀请开发者成为运营者,开发者接收到邀请后,确认接受邀请后就可以通过微信去往《微信公众平台》登录服务号后台;

开发者登录服务号后台后,去 基本配置中 点击成为开发者,然后获取到公众号的appid与对应的secret;

接下来,需要配置公众号访问的后台路径(每个用户的每次关注与每次发送消息访问的后台路径),我们可以通过这个接口可以拿到我们想要的用户openid与对应unionid

在开发初期,我们可以通过花生壳,将本地域名发布成https,然后将接口路径写上去,从而进行本地调试。在上线后,需要将服务器配置修改成生产环境域名。

本地调试的目的,在于验证公众号配置与后台接口协议的token(自己手写的一个密匙)

例子代码在 保定尚锋物流项目中的 gzh_acceptAndPushWxNewsToken.json 接口中;

请一定注意,后续如果需要获取unionid,《微信公众平台》中的基本配置中的“IP白名单“一定要配置好,本地调试写上本地IP,发布后,需要填写服务器IP,否者将报错40164

官方文档:

https://mp.weixin.qq.com/cgi-bin/announce?action=getannouncement&key=1495617578&version=1&lang=zh_CN&platform=2&token=741713826

自此,公众号openid与unionID也已经获取完毕,自行写业务逻辑代码;

发送微信公众号模板消息:

发送模板消息首要前提,公众号需要客户进行认证,认证通过后才有这个权限(需要客户掏300块钱)

到《微信公众平台》的后台的模板消息中,选取适合业务逻辑的消息模板,如果没有可以申请,目前一个月允许申请三次,每次的审核周期在7~15天。

选取完毕后,可以在列表看到模板ID等

然后进行业务逻辑模板消息发送

官方技术文档:

模板消息 | 微信开放文档

我们可以在上述文档中直接Ctrl+F搜索此接口 :

https://api.weixin.qq.com/cgi-bin/message/template/send

主要就是看此接口,进行模板消息发送;

例子代码在 保定尚锋物流项目中的 WechartSendJobService 中,本人写的一个表专门存发送消息的VO,同通过定时任务推送,当然,可以在业务逻辑代码中及时调用进行推送,定时任务更多的是做补救动作;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值