佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > php實現(xiàn)QQ小程序發(fā)送模板消息功能

php實現(xiàn)QQ小程序發(fā)送模板消息功能

熱門標簽:團購網(wǎng)站 Linux服務(wù)器 科大訊飛語音識別系統(tǒng) 阿里云 服務(wù)器配置 電子圍欄 Mysql連接數(shù)設(shè)置 銀行業(yè)務(wù)

QQ小程序群里有伙伴要發(fā)送模板消息的代碼,所以今天給大家分享QQ小程序模板消息發(fā)布,絕對一步一步帶著大家走,每個細節(jié)都講到。

今天先用php簡單寫一下,有空了再寫java的。

首先創(chuàng)建一個空項目:

因為QQ小程序沒有編譯器,先用微信小程序創(chuàng)建。


然后新建一個頁面,直接上html代碼:

form bindsubmit="form_submit" report-submit="true">
button formType="submit">這是模板發(fā)送按鈕/button>
/form>

然后寫js邏輯:



然后上js代碼

form_submit(e) {
  console.log(e.detail.formId)
  var that = this
  wx.showToast({
   title: '正在發(fā)送模板消息請求',
   duration: 5000,
   icon: 'loading',
   mask: true
  })
  //推送消息
  wx.login({
   success: function (res) {
    console.log("獲得的code");
    console.log(res)
    var code = res.code;//發(fā)送給服務(wù)器的code
    console.log("獲得用戶信息成功");
      if (code) {
       wx.request({
        url: 'https://xxxx/tokentest.php',//服務(wù)器的地址,現(xiàn)在微信小程序只支持https請求,所以調(diào)試的時候請勾選不校監(jiān)安全域名
        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: '發(fā)送模板消息成功!',
         })
        }
       })
      }
      else {
       console.log("獲取用戶登錄態(tài)失?。?);
      }
   },
   fail: function (error) {
    console.log('login failed ' + error);
   }
  })
 },

這里簡單說一下原理:

微信小程序、QQ小程序想要發(fā)送模板消息給用戶,必須要用戶在小程序前端有提交表單的動作出現(xiàn),所以我們在html中寫了個form標簽來完成這一要求,然后在js端接受該表單返回的formid,這個表單id是有七天時效的,也就是說在7天之內(nèi)可以向用戶發(fā)送模板消息。綜上,發(fā)送模板消息需要兩個東西:一是用戶的openid(發(fā)給誰),二是用戶的formid(有表單提交動作)。

我們在js中拿到了用戶的formid但是沒有拿到openid,所以需要請求后臺去拿用戶的openid。
拿openid需要用用戶提交上去的code,和小程序的appid及appsercet三把鑰匙去請求微信服務(wù)器,返回用戶的openid.

申請一個模板templateid:




然后是后臺程序php:

tokentest.php

form_submit(e) {
  console.log(e.detail.formId)
  var that = this
  wx.showToast({
   title: '正在發(fā)送模板消息請求',
   duration: 5000,
   icon: 'loading',
   mask: true
  })
  //推送消息
  wx.login({
   success: function (res) {
    console.log("獲得的code");
    console.log(res)
    var code = res.code;//發(fā)送給服務(wù)器的code
    console.log("獲得用戶信息成功");
      if (code) {
       wx.request({
        url: 'https://xxxx/tokentest.php',//服務(wù)器的地址,現(xiàn)在微信小程序只支持https請求,所以調(diào)試的時候請勾選不校監(jiān)安全域名
        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: '發(fā)送模板消息成功!',
         })
        }
       })
      }
      else {
       console.log("獲取用戶登錄態(tài)失??!");
      }
   },
   fail: function (error) {
    console.log('login failed ' + error);
   }
  })
 },

appid和appsercet在小程序后臺弄:



最后看一下效果吧:


總結(jié)

以上所述是小編給大家介紹的php實現(xiàn)QQ小程序發(fā)送模板消息功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

您可能感興趣的文章:
  • 用Python寫一個模擬qq聊天小程序的代碼實例
  • mpvue小程序仿qq左滑置頂刪除組件
  • 微信小程序?qū)崿F(xiàn)發(fā)送模板消息功能示例【通過openid推送消息給用戶】
  • C#開發(fā)之微信小程序發(fā)送模板消息功能

標簽:衡水 廣元 江蘇 衢州 棗莊 萍鄉(xiāng) 蚌埠 大理

巨人網(wǎng)絡(luò)通訊聲明:本文標題《php實現(xiàn)QQ小程序發(fā)送模板消息功能》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    保靖县| 南陵县| 民和| 安新县| 赤城县| 修武县| 洪雅县| 巴林右旗| 威远县| 翼城县| 防城港市| 定西市| 济宁市| 云浮市| 南乐县| 满洲里市| 霞浦县| 正阳县| 广汉市| 巍山| 达拉特旗| 大新县| 德庆县| 招远市| 铁岭市| 嘉兴市| 太谷县| 堆龙德庆县| 虎林市| 城步| 临颍县| 达拉特旗| 油尖旺区| 临夏县| 丽水市| 宁强县| 淮阳县| SHOW| 安庆市| 宜阳县| 天峨县|