admin管理员组文章数量:1569300
实现方式有两种:
一:微信开放标签
表现形式为组件嵌入页面,公众号一次性订阅消息 | 微信开放文档微信开发者平台文档https://developers.weixin.qq/doc/offiaccount/Message_Management/One-time_subscription_info.html
这种实现在我的另一篇博文有详细的实现讲解微信公众号订阅消息 wx-open-subscribe 的实现及闭坑指南_a_靖的博客-CSDN博客微信订阅消息的避坑指南和解决方案,以及实现示例代码https://a-jing.blog.csdn/article/details/125484670
二:公众号一次性订阅消息(服务号订阅通知功能)
表现形式为前端重定向到微信的授权页面然后返回页面,
目录 | 微信开放文档微信开发者平台文档https://developers.weixin.qq/doc/offiaccount/OA_Web_Apps/Wechat_Open_Tag.html#23
这种实现很简单,就是把参数拼接上去,然后跳转地址就行,如下所示:
location.href =
`https://mp.weixin.qq/mp/subscribemsg?action=get_confirm&appid=${appId}&scene=${scene_id}&template_id=${template_id}&redirect_url=${redirect_url}#wechat_redirect`;
跳转过去以后会返回跳转之前的页面,在页面接收options.action === 'confirm' 的时候,就是用户授权了。
下面是官方文档描述:
第一步:需要用户同意授权,获取一次给用户推送一条订阅模板消息的机会
在确保微信公众帐号拥有订阅消息授权的权限的前提下(已认证的公众号即有权限,可登录公众平台在接口权限列表处查看),引导用户在微信客户端打开如下链接:
https://mp.weixin.qq/mp/subscribemsg?action=get_confirm&appid=wxaba38c7f163da69b&scene=1000&template_id=1uDxHNXwYQfBmXOfPJcjAS3FynHArD8aWMEFNRGSbCc&redirect_url=http%3a%2f%2fsupport.qq&reserved=test#wechat_redirect
参数说明
参数 | 是否必须 | 说明 |
---|---|---|
action | 是 | 直接填get_confirm即可 |
appid | 是 | 公众号的唯一标识 |
scene | 是 | 重定向后会带上 scene 参数,开发者可以填0-10000的整型值,用来标识订阅场景值 |
template_id | 是 | 订阅消息模板ID,登录公众平台后台,在接口权限列表处可查看订阅模板ID |
redirect_url | 是 | 授权后重定向的回调地址,请使用 UrlEncode 对链接进行处理。 注:要求redirect_url的域名要跟登记的业务域名一致,且业务域名不能带路径。 业务域名需登录公众号,在设置 - 公众号设置 - 功能设置里面对业务域名设置。 |
reserved | 否 | 用于保持请求和回调的状态,授权请后原样带回给第三方。该参数可用于防止 csrf 攻击(跨站请求伪造攻击),建议第三方带上该参数,可设置为简单的随机数加 session 进行校验,开发者可以填写a-zA-Z0-9的参数值,最多128字节,要求做urlencode |
#wechat_redirect | 是 | 无论直接打开还是做页面302重定向时,必须带此参数 |
用户同意或取消授权后会返回相关信息
如果用户点击同意或取消授权,页面将跳转至:
redirect_url/?openid=OPENID&template_id=TEMPLATE_ID&action=ACTION&scene=SCENE
参数说明
参数 | 说明 |
---|---|
openid | 用户唯一标识,只在用户确认授权时才会带上 |
template_id | 订阅消息模板ID |
action | 用户点击动作,"confirm"代表用户确认授权,"cancel"代表用户取消授权 |
scene | 订阅场景值 |
reserved | 请求带入原样返回 |
版权声明:本文标题:微信网页订阅消息实现 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1727641730a1123346.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论