评论

使用PHP处理小程序订阅消息的推送

使用PHP发送小程序订阅消息。

前端的接口:我们可以预设多个模板ID一起申请,用户勾选的会返回accept,也是就通过,后端就可以记录一次了。

wx.requestSubscribeMessage({
      tmplIds: ["XII_0By8D9WabnUjVPB_8S1itsm2d4_xxx"],
      success: function (res) {
        if (res.XII_0By8D9WabnUjVPB_8S1itsm2d4_xxx === 'accept'){
          wx.showToast({
            title: '订阅OK!',
          })
        }
        console.log(res)
        //成功
      },
      fail(err) {
        //失败
        console.error(err);
      }
    })
  },

这里主要看一下后端PHP的代码:

其实很简单:一定要注意的是字段的类型要匹配,还有如果显示:xxx blackList 换个词或者模板吧。

 * 发送订阅消息
 * @return [type] [description]
 */
public function sendSubMessage($openId = "openId",$tmpl = "XII_0By8D9WabnUjVPB_8S1itsm2d4_xxx"){

	$params['touser'] = $openId;
	$params['template_id'] = $tmpl;
	$params['page'] = "/pages/index/index";
	$params['data'] = [
		'date2' => ['value' =>'2019-10-12'],
	    // 'character_string7' =>['value'=>'121212'],
	    'thing1'=>['value'=>'开通完成']
	];

	// return $this->success('200',$params);
	 return $this->getCurl(self::$subMessageUrl.self::$accessToken,$params);

}

看一下效果:

订阅消息现在有很多问题,在小程序端,如果勾选默认,即使把程序删了,也无法弹出,去权限设置那里,只有取消和勾选。。。。还有禁止。

最后一次编辑于  10-15  
点赞 1
收藏
评论

2 个评论