App中使用微信公众号的模版消息来进行消息推送

开发背景


        省钱,保活、高大上。

环境准备


  • 申请公众号;
  • 开通微信认证(300元/年);
  • 申请微信开放平台;
  • 购买一个域名并备案(100元左右/3年);
  • 购买一台服务器并将域名解析到服务器上来(299元/3年);

实现原理


  1. 用户下载app并使用微信登录,获取微信openid;
  2. 将openid、手机号、设备IMEI、以及用户信息post到后台进行保存;
  3. 当触发消息推送时(如设备报警),根据openid向指定用户推送相关信息;

实践中的坑


一、申请公众号

        一开始没注意看,直接将公众号申请成订阅号去了,进去才发现怎么也找不到模版消息,二个是也没办法进行微信认证;
        解决:从新申请服务号;

二、开通微信认证

        上传营业执照时要选择工商营业**(有点忘了),一开始选择三证合一,审核不通过;二个是会收到腾讯这边往公账上打个0.01元,然后接到工作人员电话时会问这笔钱是多少,什么时间等,需要提前看一下;
        由于上面两个问题我已经错了两次,工作人员会提示说如果再错将需要重新提交申请,意思是重新交300块钱的认证费,重新认证;

三、申请微信开发者帐号

        进入微信开放平台进行账户申请时,换哪个邮箱都提示已经被使用了,但是用来找回密码时又提示没有注册过。
        最后各种社区里面了解到,这个邮箱必须是没有绑定腾讯任何一个产品的才行。
        解决:建议解绑重新申请,我的解决方法是我直接不用了,转用网页授权模式进行获取openid;

四、获取openid(代码传送门)

        由于申请不了微信开放平台帐号,所以只能用网页授权模式进行获取openid,到这里就已经掉入大坑了,一大推文档,也不知道哪里是哪里,只能一步步的来试;
        首先是获取code时需要一个appid和redirect_uri回调地址,这个appid倒是很容易看出来在 (开发》基本配置》公众号开发信息) 里可以设置。可是这个回调地址就让我冒火了,这下面还有一个服务器配置,一直以为这个就是回调地址配置的地方,弄了一早上都是token认证失败(主要是在官网找相关说明文档);
App中使用微信公众号的模版消息来进行消息推送_第1张图片
       实在在官网找不到相关解决办法了就开始问度娘,还好有万能的网友分享出了解决办法,这TM的压根不是在这里配置啊,具体在哪里的看下图。
App中使用微信公众号的模版消息来进行消息推送_第2张图片
       从这里去把业务域名、JS接口安全域名、网页授权域名都给配置上,这个问题才算是了解;

六、消息模版推送

       要说前面获取openid的接口说明文档太多太散了,那模版消息推送接口倒是简洁了好多,简洁到我又得重新翻了一遍所有的文档才发现此ACCESS_TOKEN北非彼ACCESS_TOKEN;
       直接用网页授权获取到的ACCESS_TOKEN进行模板消息推送请求会报40001的错误;
App中使用微信公众号的模版消息来进行消息推送_第3张图片
       那么具体ACCESS_TOKEN又是哪个呢?看这里应该是我眼见放皮包里了,前面这懵逼还挺有后劲,到这里了都还没有醒过来;
App中使用微信公众号的模版消息来进行消息推送_第4张图片

七、对于酒量不行的人来说懵逼也有后劲

       到这里原以为万事俱备了,没想到一上代码发现这股懵逼劲既然还在。那么具体在哪里呢?在于咱没有添加IP白名单,这玩意一旦掌握不好也可以让你后劲无穷,下面看看具体哪里设置吧。
App中使用微信公众号的模版消息来进行消息推送_第5张图片

放在结尾

App中使用微信公众号的模版消息来进行消息推送_第6张图片
       失败不是成功他妈,顶多算是他前女友,最后我们来算一笔账,这个公众号消息推送他到底划不划算。

花费项目 花费金额/元 项目时长/年
微信认证 300 1
域名 100 3
服务器 299 3
总计 1299 3

       从账面上来看还是比较划算的,毕竟现在的第三方推送都不太便宜啊,希望能对有相关需求的你有所帮助,我撤了。

你可能感兴趣的:(后台,舆情小二)