微信小程序訂閱號

人在家中坐,班從天上來

一直以來,微信Api一直很強勢。這次也不例外。

在這裏插入圖片描述
既然模板消息不能使用了,那隻能加班改爲訂閱消息。

一、微信公衆平臺部分

1.1 要想使用微信訂閱號功能,首先你要在微信公衆平臺申請開啓訂閱號功能。
在這裏插入圖片描述
1.2 開通成功後,添加訂閱模板。這裏的模板id是用來推送消息的。
在這裏插入圖片描述
模板添加完成以後,微信公衆平臺的操作就已經完成了。

二、前端部分

微信訂閱號的前端部分是很簡單的,只需要用戶也必須用戶觸發點擊操作以後,調用一個接口就行了
在這裏插入圖片描述
wxml

 <view class="reservation-btn" bindtap="reservationBtnClik">立即預訂</view>

js

 //預定
  reservationBtnClik(){
    let that=this;
    wx.requestSubscribeMessage({
      tmplIds: ['ra8YQ4iPXXUH-QyEo7qQAJTCg1p4qCwCtoD9PxgVR2Q'],
      success(res) {
        console.log(res);
        if (res.errMsg =="requestSubscribeMessage:ok"){
          that.reservationBtnClik1();
        }
     
      },
      fail(err) {
        console.log(err);
      }
    })
  },

至此,前端部分已經完成。不過這裏需要注意的是,一次點擊最多有三個模板id
在這裏插入圖片描述

後臺

後臺和模板消息大體一樣

  //測試訂閱號消息
            if($type == 'subscribeMessage'){
                $main_data = [
                    'character_string1' => ['value' => 'r123456'],
                    'thing2' => ['value' => 'r123456'],
                    'name3' => ['value' => '十個以內的純漢字'],
                    'number5' => ['value' => '110'],
                    'thing6' => ['value' => 'r123456']
                ];
                $url = 'https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token='.$access_token;
                $data = array(
                    'touser' => $userModel->getOpenid(),
                    'template_id' =>'ra8YQ4iPXXUH-QyEo7qQAJTCg1p4qCwCtoD9PxgVR2Q',
                    'page' => 'pages/orderDetail/orderDetail?order_no='.$order_info['order_no'],
                    'data' => $main_data
                );
            }

            $content = json_encode($data, JSON_UNESCAPED_UNICODE);
            log_info('請求鏈接爲:'.$url);
            log_info('請求參數爲:'.$content);
            $res = _curl_post($url, $content);

注意:這裏比較坑的是,模板消息一定要嚴格按照微信公衆平臺要求的字段的類型填寫。否則就是47003
例如character_string1就代表,你只能填寫數字、字母、符號;不能填寫漢字。
在這裏插入圖片描述

在這裏插入圖片描述

此外,還需要特別注意的是。和模板消息不同的是,微信訂閱號消息用戶雖然點擊同意一次,但是可以多次推送。不像模板消息中的formid一旦使用就不能再次推送了。所以後臺一定要做好推送的限制,避免頻繁重複推送。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章