php关注公众号发送消息(php实现QQ小程序发送模板消息功能)
php关注公众号发送消息
php实现QQ小程序发送模板消息功能QQ小程序群里有伙伴要发送模板消息的代码,所以今天给大家分享QQ小程序模板消息发布,绝对一步一步带着大家走,每个细节都讲到。
今天先用php简单写一下,有空了再写java的。
首先创建一个空项目:
因为QQ小程序没有编译器,先用微信小程序创建。
然后新建一个页面,直接上html代码:
- <form bindsubmit="form_submit" report-submit="true">
- <button formType="submit">这是模板发送按钮</button>
- </form>
然后写js逻辑:
然后上js代码
- form_submit(e) {
- console.log(e.detail.formId)
- var that = this
- wx.showToast({
- title: '正在发送模板消息请求',
- duration: 5000,
- icon: 'loading',
- mask: true
- })
- //推送消息
- wx.login({
- success: function (res) {
- console.log("获得的code");
- console.log(res)
- var code = res.code;//发送给服务器的code
- console.log("获得用户信息成功");
- if (code) {
- wx.request({
- url: 'https://xxxx/tokentest.php',//服务器的地址,现在微信小程序只支持https请求,所以调试的时候请勾选不校监安全域名
- data: {
- code: code,
- formID: e.detail.formId,
- },
- header: {
- 'content-type': 'application/json'
- },
- success: function (res) {
- console.log(res.data);
- wx.setStorageSync('useropenid', res.data)
- wx.showToast({
- title: '发送模板消息成功!',
- })
- }
- })
- }
- else {
- console.log("获取用户登录态失败!");
- }
- },
- fail: function (error) {
- console.log('login failed ' + error);
- }
- })
- },
这里简单说一下原理:
微信小程序、QQ小程序想要发送模板消息给用户,必须要用户在小程序前端有提交表单的动作出现,所以我们在html中写了个form标签来完成这一要求,然后在js端接受该表单返回的formid,这个表单id是有七天时效的,也就是说在7天之内可以向用户发送模板消息。综上,发送模板消息需要两个东西:一是用户的openid(发给谁),二是用户的formid(有表单提交动作)。
我们在js中拿到了用户的formid但是没有拿到openid,所以需要请求后台去拿用户的openid。
拿openid需要用用户提交上去的code,和小程序的appid及appsercet三把钥匙去请求微信服务器,返回用户的openid.
申请一个模板templateid:
然后是后台程序php:
tokentest.php
- form_submit(e) {
- console.log(e.detail.formId)
- var that = this
- wx.showToast({
- title: '正在发送模板消息请求',
- duration: 5000,
- icon: 'loading',
- mask: true
- })
- //推送消息
- wx.login({
- success: function (res) {
- console.log("获得的code");
- console.log(res)
- var code = res.code;//发送给服务器的code
- console.log("获得用户信息成功");
- if (code) {
- wx.request({
- url: 'https://xxxx/tokentest.php',//服务器的地址,现在微信小程序只支持https请求,所以调试的时候请勾选不校监安全域名
- data: {
- code: code,
- formID: e.detail.formId,
- },
- header: {
- 'content-type': 'application/json'
- },
- success: function (res) {
- console.log(res.data);
- wx.setStorageSync('useropenid', res.data)
- wx.showToast({
- title: '发送模板消息成功!',
- })
- }
- })
- }
- else {
- console.log("获取用户登录态失败!");
- }
- },
- fail: function (error) {
- console.log('login failed ' + error);
- }
- })
- },
appid和appsercet在小程序后台弄:
最后看一下效果吧:
总结
以上所述是小编给大家介绍的php实现QQ小程序发送模板消息功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
原文链接:https://blog.csdn.net/weixin_41606022/article/details/98104687
- php如何建立一个网站(PHP利用DWZ.CN服务生成短网址)
- centos安装php5.6(Centos7 Yum安装PHP7.2流程教程详解)
- php语言程序设计基础面向对象(PHP面向对象程序设计之对象的遍历操作示例)
- php最好的探针(php探针不显示内存解决方法)
- php实现无cookie的session(php实现多站点共用session实现单点登录的方法详解)
- phparray函数的用法(php array_chunk函数用法与注意事项)
- dedecms版本介绍(解决更换PHP5.4以上版本后Dedecms后台登录空白问题的方法)
- php编程输出菱形(php输出反斜杠的实例方法)
- linux如何安装php7.1.5环境(vmware linux系统安装最新的php7图解)
- php中最常用的标记符(php中目录操作opendir、readdir及scandir用法示例)
- php中三种变量的作用区域(PHP global全局变量经典应用与注意事项分析附$GLOBALS用法对比)
- php封装api(PHP常用的类封装小结4个工具类)
- php数组是怎么实现的(PHP里的$_GET数组介绍)
- phpstudy安装包打不开(phpStudy访问速度慢和启动失败的解决办法)
- php创建多个文件(PHP实现单文件、多个单文件、多文件上传函数的封装示例)
- php内置加密函数(php过滤htmlspecialchars 函数实现把预定义的字符转换为 HTML 实体用法分析)
- 文明6金币太少怎么办 文明6无限刷钱教程(文明6金币太少怎么办)
- 开国中将,王牌军63军首任政委,两个连襟一个上将一个少将传为佳话(王牌军63军首任政委)
- 臭名昭著的731部队最高负责人 石井四郎(臭名昭著的731部队最高负责人)
- 王牌部队,你看的剧情我看的时尚(你看的剧情我看的时尚)
- 被鉴定的古董价值300万 当心,你可能遇到诈骗了(被鉴定的古董价值300万)
- 英语难学吗(初中英语难学吗)
热门推荐
- 阿里云盘挂载云服务器(阿里云主机的安装硬盘挂载数据盘加载或修改/www)
- 安装SQL Server 2016出错提示:需要安装oracle JRE7 更新 51(64位)或更高版本问题的解(安装SQL Server 2016出错提示:需要安装oracle JRE7 更新 5164位或更高版本问题的解)
- python数值基本运算方法(Python常见数字运算操作实例小结)
- log4net 使用
- docker安装java8(docker安装java环境的实现步骤)
- win7如何搭建serv-u服务器(使用Serv-U搭建FTP服务器以及bestsync自动同步设置图文教程)
- python 正则表达式菜鸟教程(详解Python正则表达式re模块)
- python 从入门到实践笔记(python基础梳理一推荐)
- 阿里云服务器使用教程(阿里云服务器安全规则配置详解)
- dedecms操作方法(织梦Dedecms在循环列表中获取会员信息的方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9