微信小程序中发送一次性订阅消息和设备长期订阅消息

1 发送一次性订阅消息代码

 /**
     * 发送一次性订阅消息
     */
    public static String sendWxAppMessage(String openId, String templateId, JSONObject json, String jumpAddress) {
        String url = Constants.WECHAT_GET_TOKEN + Constants.WECHAT_APPID + appId + Constants.WECHAT_SECRET + secret;
        String access_token = "";
        String code = "";
        try (Response response = OkHttpUtil.get(url)) {
            log.info("接口调用凭证:response=" + response.toString());
            if (response.isSuccessful()) {
                JSONObject resData = JSON.parseObject(response.body().string());
                Integer errcode = resData.getInteger("errcode");
                if (errcode == null || errcode == 0) {
                    access_token = resData.getString("access_token");
                    if (StringUtils.isNotEmpty(access_token)) {
                        log.info("接口调用凭证:access_token =" + access_token);
                        String sendUrl = Constants.WECHAT_SEND + access_token;
                        JSONObject param = new JSONObject();
                        param.put("touser", openId);
                        param.put(&
### 微信小程序一次性订阅消息长期订阅消息 #### 一次性订阅消息的特点及实现方法 一次性订阅消息是指用户每次接收到的消息都需要单独授权一次。这类消息通常用于特定事件的通知,比如活动提醒、订单状态更新等。 - **模板选择** 在微信公众平台订阅消息模块公共模板库中选取所需模板,并记录下详细内容的 key 值[^1]。 - **开发流程** 获取模板 ID 后,在适当位置(如点击按钮后)调用 API 请求用户的订阅权限。当用户同意后,服务端可以向微信服务器请求发送该条消息所需的 token 并完成消息推送[^2]。 ```javascript // JavaScript 示例:获取用户订阅权限 wx.requestSubscribeMessage({ tmplIds: ['template_id_01'], success (res) { console.log('User agreed to subscribe:', res); }, fail (err) { console.error('Failed to get subscription permission', err); } }); ``` #### 长期订阅消息的特点及实现方法 相比之下,长期订阅消息允许用户一次性授予对于某类消息类型的持续接收权,直到取消为止。这适用于更广泛的信息传递场景,例如新闻资讯、天气预报等定期发布的通知。 - 对于长期订阅而言,开发者同样需先选定合适的模板并配置好相应的参数设置;然而不同之处在于只需让用户初次访问时确认过一次即可,之后无需再重复询问其是否愿意接受此类信息。 - 发送前依旧要取得有效的 access_token 来构建 HTTP POST 请求体中的必要字段,从而触发实际的消息投递过程。 ```json { "touser": "OPENID", "template_id": "TEMPLATE_ID", "page": "index", "data": { "keyword1": {"value": "33920849"}, ... } } ``` #### 主要区别总结 | 特征 | 一次性订阅消息 | 长期订阅消息 | | --- | -------------- | -------------| | 用户授权频率 | 每次都需重新获得许可 | 只需首次授权 | | 应用场景 | 即时性的单次事件提示 | 定期或周期性信息发布 |
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值