<dfn id="bq4sp"><code id="bq4sp"><dl id="bq4sp"></dl></code></dfn>
<menuitem id="bq4sp"><mark id="bq4sp"></mark></menuitem>

<menuitem id="bq4sp"></menuitem>
<abbr id="bq4sp"><button id="bq4sp"><pre id="bq4sp"></pre></button></abbr>
  • <strike id="bq4sp"><rt id="bq4sp"></rt></strike>
  • <nobr id="bq4sp"></nobr>
  • 国产亚洲tv在线观看,五月综合婷婷开心综合婷婷,嫩草院一区二区乱码,国产精品18久久久久久麻辣 ,国产精品剧情亚洲二区,国产美熟女乱又伦AV果冻传媒,国产福利高颜值在线观看,无码人妻丰满熟妇啪啪网不卡

    微信小程序推送公眾號模板消息

    描述:

    因小程序是被動觸發推送消息,所以要做成推送到該用戶的微信公眾號上

    代碼推送模板消息則是通過用戶的openId來進行推送,但是小程序和微信公眾號的openId不同,所以只能另找辦法。

    在微信的官網上查詢到,綁定在同一個微信開放者平臺上,則會生成一個unionId,這個unionId在小程序端和在微信公眾號端都是一樣的,所以我們拿這個來實現向微信公眾號推送模板消息的功能。


    前期準備:

    微信公眾號:AppId和APPSecret(必須認證)

    微信小程序:AppId和APPSecret(必須認證)

    微信開放者平臺(小程序和公眾號必須綁定同一個開放者平臺,必須認證)

    認證方法找微信文檔或度娘即可


    獲取微信公眾號的所有用戶信息:

    1、通過微信公眾號的AppId和AppSecret(當前ip地址必須在微信公眾號的白名單內)

    獲取微信公眾號的access_token(7200秒有效)

    地址:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET


    返回結果:

    {
     "access_token": "ACCESS_TOKEN",
     "expires_in": 7200}


    (其中的APPID和APPSECRET換成自己微信公眾號的appId和APPSecret)


    2、通過剛才獲取到的access_token去獲取所有用戶的openId

    地址:https://api.weixin.qq.com/cgi-bin/user/get?access_token=ACCESS_TOKEN&next_openid=NEXT_OPENID


    返回結果:

    {"count": 2,"data": {
      "openid": [
        "OPENID1",
        "OPENID2"
      ]},"next_openid": "NEXT_OPENID","total": 2}

    (NEXT_OPENID為超出10000個取10001繼續請求,這個會在每次請求后返回的json字符串中有)


    3、將所有的openId全部放在一個新的數組中,然后for循環,循環次數為openId的數組的長度,循環請求每個用戶的基本信息

    地址:https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN


    返回結果:

    {
    "subscribe": 1,
    "openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M",
    "nickname": "Band",
    "sex": 1,
    "language": "zh_CN",
    "city": "廣州",
    "province": "廣東",
    "country": "中國",
    "headimgurl": "http://thirdwx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0",
    "subscribe_time": 1382694957,
    "unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL",
    "remark": "",
    "groupid": 0,
    "tagid_list": [
      128,
      2
    ],
    "subscribe_scene": "ADD_SCENE_QR_CODE",
    "qr_scene": 98765,
    "qr_scene_str": ""
    }

    (其中的unionid綁定了開放者平臺才會有的)


    4、將所有的用戶信息存儲在自己的數據庫中


    獲取小程序用戶信息:

    1、小程序端通過調用wx.login()會獲取到一個用戶登錄憑證code(有效期五分鐘)

    2、將code傳給后臺,后臺通過appId、APPSecret和code能夠獲取到這個用戶的微信基本信息


    地址:https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code


    返回結果:

    {
     "sex": 1,
     "photoUrl": "https://wx.qlogo.cn/mmopen/vi_32/DYAIOgq83eofr4W1SptUJ9M1PUiaqA4XBZiapCN98sPYOjNDXZSrUp1JcicibeLiaHZ56qlQnibQEUSFGLnEatu1TyiaA/132",
     "openId": "oDl465JGG54ezszjG3K2spJV1TNM",
     "uniodId": "otjNb03MD_IipC8XRdL68GOKLVgs"}

    (其中的unionid綁定了開放者平臺才會有的,如果綁定后還是沒有unionId,則這個小程序用戶沒有關注相同主體的公眾號)


    3、將用戶信息保存在自己的數據里


    微信公眾號推送:

    1、本地數據庫中存放著小程序用戶表和微信公眾號的表,下面就是向某一個小程序用戶推送微信公眾號信息

    2、在小程序用戶表中任意取一個用戶A信息,用戶A的openId和unionId,通過unionId到公眾號表里去檢索對應的A用戶微信公眾號的openId

    3、在微信公眾號上選擇一個模板消息,編輯完要發送的的內容后,再請求發送模板消息的接口


    地址:https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN

    請求參數:

    {
      "touser": "OPENID",
      "template_id": "ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY",
      "url": "http://weixin.qq.com/download",
      "miniprogram": {
        "appid": "xiaochengxuappid12345",
        "pagepath": "index?foo=bar"
      },
      "data": {
        "first": {
          "value": "恭喜你購買成功!",
          "color": "#173177"
        },
        "keyword1": {
          "value": "巧克力",
          "color": "#173177"
        },
        "keyword2": {
          "value": "39.8元",
          "color": "#173177"
        },
        "keyword3": {
          "value": "2014年9月22日",
          "color": "#173177"
        },
        "remark": {
          "value": "歡迎再次購買!",
          "color": "#173177"
        }
      }}


    參數
    是否必填說明
    touser接收者openid
    template_id模板ID
    url模板跳轉鏈接
    miniprogram跳小程序所需數據,不需跳小程序可不用傳該數據
    appid所需跳轉到的小程序appid(該小程序appid必須與發模板消息的公眾號是綁定關聯關系,暫不支持小游戲)
    pagepath所需跳轉到小程序的具體頁面路徑,支持帶參數,(示例index?foo=bar),暫不支持小游戲
    data模板數據
    color模板內容字體顏色,不填默認為黑色

    以上,為向微信小程序推送微信公眾號的模板消息步驟。

    *注:關于微信公眾號不能推送的,或者推送報錯的,推送的miniprogram下的appid對應的小程序必須是已審核并發布的才可以推送。



    編輯:三五互聯
    日期:2024-07-15

    收藏 】 【 打印 】   
    您可對文檔進行評分喲~

    勾選遇到的問題提交給我們,收到反饋后保證及時修正更新!

    提交反饋需要先登陸會員帳號

    上一篇:微信小程序向公眾號推送消息
    下一篇:小程序如何查詢歷史未發貨訂單
    若文檔內容對您沒有幫助,不能解決問題? 您還可以 咨詢在線客服提交工單搜索常見問題 ,我們將竭誠為您服務。
      >> 相關文章
     
    分享至: