老师可否把订阅消息这部分给补上…

来源:6-6 云调用实现模板消息推送

慕粉2333208813

2020-02-19

我报错 40037 说是模版id错误
但是直接复制的怎么会错…
检查过也是正确的Z

写回答

1回答

谢成

2020-02-19

1、请确认调试基础库的版本:

//img.mukewang.com/szimg/5e4cdc2b09a21e4311640166.jpg

2、请认真检查当前小程序的id和登录的公众平台是不是同一个,有可能是多个账号弄混了

3、请检查当前配置的模板id是不是订阅消息的,别错选了模板消息

//img1.sycdn.imooc.com/szimg/5e4cdc5909b76ffc19160946.jpg

4、然后就按照文档来就行,文档写的特别好: https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/subscribe-message.html

5、如果文档还是看不懂,再参照我的代码:

配置完模板以后,调起客户端小程序订阅消息界面:

const templateId = 'xxxxxx'

wx.requestSubscribeMessage({

    tmplIds: [templateId],

    success(res) {

        if (res[templateId] == 'accept') {

            //用户同意了订阅,允许订阅消息

            wx.showToast({

            title: '订阅成功'

            })

            } else {

            //用户拒绝了订阅,禁用订阅消息

            wx.showToast({

            title: '订阅失败'

            })

        }

    },

    fail(err) {

    console.error(err)

    }

})


 需要发送消息的时候,就调用云函数,参数名称参考模板:

//img.mukewang.com/szimg/5e4cdda5092172a510920750.jpg

云函数这样写(代码我就不格式化了,自己粘贴到开发工具就行):

const cloud = require('wx-server-sdk')

cloud.init()

exports.main = async (event, context) => {

try {

const wxContext = cloud.getWXContext()

const templateId = 'xxxxx'



return await cloud.openapi.subscribeMessage.send({

touser: wxContext.OPENID,

page: 'page/index/index',

lang: 'zh_CN',

data: {

phrase1: {

value: '上课啦'

},

thing2: {

value: '小程序开发'

},

thing3: {

value: '订阅消息'

}

},

templateId: templateId,

miniprogramState: 'developer'

})

console.log(result)

return result

} catch (err) {

console.log(err)

return err

}

}


还需要在当前云函数下面,新建config.json文件:

{

"permissions": {

"openapi": [

"subscribeMessage.send"

]

}

}

然后要上传云函数。


在需要发送订阅消息的地方,调用这个云函数就可以了。

测试订阅消息需要在真机上测试,开发工具不能测试:

//img.mukewang.com/szimg/5e4cde1209530a5f23760232.jpg

点击真机调试,用手机扫描二维码。

发送完消息以后,在微信页面,就能看到消息了:

//img.mukewang.com/szimg/5e4cde56094d553004350080.jpg



希望这样可以帮助到你。


我的初衷是课程一直强调大家分析问题的思路和运用文档,想着是大家掌握了一些自学能力以后,以后的新知识可以融会贯通,因为方法都已经讲过了。小程序后续一定会不断的有新功能出现,掌握了学习方法,以后才能够真正的在工作当中独自运用。


课程有时间我会录的,最近实在课太多,嗓子已经快说不出话了,给你带来的不便给你道歉。

希望可以理解,真心感谢!!

1
0

微信小程序云开发-从0打造云音乐全栈小程序

横跨小程序端、云后端、CMS一站式云开发的小程序全栈课程

1953 学习 · 2778 问题

查看课程