小程序订阅消息subscribeMessage.send报错43101,没有底部授权弹窗没有消息通知,可能是什么原因?
希望通过小程序demo实现,用户评论的结果通知到用户自己。提交评价,评价成功则调用云函数。
调试基础库:2.14.1
云函数代码如下:
exports.main = async (event, context) => {
console.log("event", event)
const { OPENID } = cloud.getWXContext()
console.log("OPENID", OPENID)
const result = await cloud.openapi.subscribeMessage.send({
touser: OPENID,
page: `/pages/blog-comment/blog-comment?blogId=${event.blogId}`,
data: {
thing1: {
value: '评价完成'
},
thing2: {
value: event.content
}
},
template_id: '7zt83hMczrBmoptjry5n50sZ6JdkVcS4p3A706O9i_g',
})
console.log("结果", result)
return result
}
云函数可以被调用,event和OPENID都可以正常打印,报错返回结果:
{"errorCode":1,"errorMessage":"user code exception caught","stackTrace":"Error: errCode: 43101 | errMsg: openapi.subscribeMessage.send:fail user refuse to accept the msg rid: 5ff57464-05346540-27a2bba9\n at callWXOpenAPI (/var/user/node_modules/wx-server-sdk/index.js:2378:31)\n at process._tickCallback (internal/process/next_tick.js:68:7)","statusCode":430}
我很困惑的是43101这个报错看起来十分宽泛,我定位不到错误的地方。但无论是模拟器还是真机我都没有看到底部的授权通知。我不太明白为什么就“用户拒绝”了。路过的各位大佬麻烦指点一下,我可能哪里写错了,谢谢!
补充:小程序的设置里只有用户信息一栏:
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
设置 -> 通知管理,看看是不是开启了接收通知,没开启的话开起来
--------------->
更新一版吧
首先你需要在c端用户主动点击情况下去调用wx.requestSubscribeMessage
这时用户点击了允许你才可以在服务端发送订阅消息
具体流程建议你再仔细看看小程序文档