国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

微信小程序模板消息推送

這篇具有很好參考價(jià)值的文章主要介紹了微信小程序模板消息推送。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

時(shí)序圖

???????微信小程序模板消息推送

?

首先,我們需要知道一件事情,小程序的模板推送分為“一次性訂閱”和“長(zhǎng)期訂閱”

一次性訂閱:用戶(hù)訂閱小程序后,程序只能對(duì)指定OpenId進(jìn)行一次推送模板消息,無(wú)法多次推送

長(zhǎng)期訂閱:用戶(hù)長(zhǎng)期訂閱,能夠多次推送模板消息(長(zhǎng)期訂閱模板需要向微信官方發(fā)起申請(qǐng))

推送模板消息前置配置

1.需要配置消息推送

微信小程序模板消息推送

2.需要根據(jù)AppId、AppSecret調(diào)用開(kāi)發(fā)文檔Api獲取access_token?

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

微信小程序模板消息推送

2.需要使用access_token調(diào)用以下Api獲取到微信用戶(hù)的open_id

POST https://api.weixin.qq.com/wxa/getpluginopenpid?access_token=ACCESS_TOKEN

微信小程序模板消息推送

推送模板消息API

微信小程序模板消息推送

微信開(kāi)發(fā)文檔中的模板消息已經(jīng)廢棄不進(jìn)行使用了,我們現(xiàn)在應(yīng)該使用“訂閱消息”——>“send”這個(gè)API(下方鏈接)

subscribeMessage.send | 微信開(kāi)放文檔

微信小程序模板消息推送

?其中參數(shù)的data屬性,需要我們?cè)诖a中與之對(duì)應(yīng):

例如:

模板格式

微信小程序模板消息推送

參數(shù)類(lèi)型:

微信小程序模板消息推送

?類(lèi)型:(需要注意一些長(zhǎng)度限制

微信小程序模板消息推送

?上邊的準(zhǔn)備好就可以進(jìn)行代碼編寫(xiě)。

代碼實(shí)現(xiàn)

1.模板消息:(所要傳的參數(shù)實(shí)體

public class WxSubscribeMsg {

    // 接收人id
    private String touser;
    // 模板id
    private String template_id;
    // 跳轉(zhuǎn)小程序
    private String page;
    // 模板數(shù)據(jù)
    private Map<String, WxTemplateValue> data;
    // 跳轉(zhuǎn)小程序類(lèi)型 默認(rèn)正式版
    private String miniprogram_state;
    // 語(yǔ)言類(lèi)型 默認(rèn)中文
    private String lang = "zh_CN";

    public String getTouser() {
        return touser;
    }

    public void setTouser(String touser) {
        this.touser = touser;
    }

    public String getTemplate_id() {
        return template_id;
    }

    public void setTemplate_id(String template_id) {
        this.template_id = template_id;
    }

    public String getPage() {
        return page;
    }

    public void setPage(String page) {
        this.page = page;
    }

    public Map<String, WxTemplateValue> getData() {
        return data;
    }

    public void setData(Map<String, WxTemplateValue> data) {
        this.data = data;
    }

    public String getMiniprogram_state() {
        return miniprogram_state;
    }

    public void setMiniprogram_state(String miniprogram_state) {
        this.miniprogram_state = miniprogram_state;
    }

    public String getLang() {
        return lang;
    }

    public void setLang(String lang) {
        this.lang = lang;
    }
}

?2.模板內(nèi)容:(API中的data屬性

public class WxTemplateValue {

    private String value;

    public String getValue() {
        return value;
    }

    public void setValue(String value) {
        this.value = value;
    }

    @Override
    public String toString() {
        return "WxTemplateValue{" +
                "value='" + value + '\'' +
                '}';
    }
}

?3.返回?cái)?shù)據(jù)接收

public class WxUserInfo {
    private String openid;

    private String session_key;

    private String unionid;

    private int errcode;

    private String errmsg;

    public String getOpenid() {
        return openid;
    }

    public void setOpenid(String openid) {
        this.openid = openid;
    }

    public String getSession_key() {
        return session_key;
    }

    public void setSession_key(String session_key) {
        this.session_key = session_key;
    }

    public String getUnionid() {
        return unionid;
    }

    public void setUnionid(String unionid) {
        this.unionid = unionid;
    }

    public int getErrcode() {
        return errcode;
    }

    public void setErrcode(int errcode) {
        this.errcode = errcode;
    }

    public String getErrmsg() {
        return errmsg;
    }

    public void setErrmsg(String errmsg) {
        this.errmsg = errmsg;
    }
}

?推送代碼:

調(diào)用的API接口:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-500868.html

POST https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=ACCESS_TOKEN
WxSubscribeMsg wxSubscribeMsg = new WxSubscribeMsg();
                            wxSubscribeMsg.setTouser(openId);
                            wxSubscribeMsg.setTemplate_id(templateId);
                            // 模板消息到小程序跳轉(zhuǎn)頁(yè)面
                            wxSubscribeMsg.setPage("pages/workbench/workbench?id=" + dto.getId()+"&pageTpye=task");
//                             開(kāi)發(fā)版
//                            wxSubscribeMsg.setMiniprogram_state("developer");
//                             跳轉(zhuǎn)體驗(yàn)版
                            wxSubscribeMsg.setMiniprogram_state("trial");
//                             跳轉(zhuǎn)正式版
//                            wxSubscribeMsg.setMiniprogram_state("formal");

                            // 模板消息
                            Map<String, WxTemplateValue> map = new HashMap<>();

                            // 發(fā)布內(nèi)容
                            WxTemplateValue keyword1 = new WxTemplateValue();
                            keyword1.setValue(sendContent);
                            map.put("thing1", keyword1);

                            // 影響區(qū)域
                            WxTemplateValue keyword2 = new WxTemplateValue();
                            String taskArea = dto.getSecondAreaName()+dto.getThirdAreaName();
                            if(taskArea.length() < 20){
                                keyword2.setValue(taskArea);
                            }else{
                                keyword2.setValue("");
                            }
                            map.put("thing2", keyword2);

                            // 發(fā)布時(shí)間
                            WxTemplateValue keyword3 = new WxTemplateValue();
                            String date = dto.getTaskStartTime()

                            keyword3.setValue(date);
                            map.put("date3", keyword3);

                            // 發(fā)布單位
                            WxTemplateValue keyword4 = new WxTemplateValue();
                            String group = dto.getName();
                            if(group.length() < 20){
                                keyword4.setValue(group);
                            }else{
                                String substring = group.substring(0, 20);
                                keyword4.setValue(substring);
                            }
                            map.put("thing4", keyword4);
                            // 推送模板參數(shù)
                            wxSubscribeMsg.setData(map);

                            // 參數(shù)轉(zhuǎn)json
                            String json = JSONObject.toJSONString(wxSubscribeMsg);
                            // 調(diào)用微信推送模板接口
                            String doPostJson = HttpClientUtil.doPostJson(requestUrl, json);
                            // 將獲取到的數(shù)據(jù)進(jìn)行判斷進(jìn)行日志寫(xiě)入
                            JSONObject jsonObject = JSONObject.parseObject(doPostJson);
                            LOGGER.info("調(diào)用微信模板消息回調(diào)結(jié)果:"+ com.wanwei.oneview.base.utils.JsonUtils.objectToJson(jsonObject));

到了這里,關(guān)于微信小程序模板消息推送的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 微信小程序發(fā)送消息推送

    微信小程序發(fā)送消息推送

    在小程序開(kāi)發(fā)中,如果想實(shí)現(xiàn):用戶(hù)發(fā)給小程序的消息以及開(kāi)發(fā)者需要的事件推送,在小程序項(xiàng)目中,我們想要實(shí)現(xiàn)這樣一個(gè)功能, 比如我們小程序中的客服功能,我不想要使用小程序后臺(tái)的在線(xiàn)客服功能,但我又想實(shí)現(xiàn)客服功能,這個(gè)時(shí)候微信提供了消息推送功能,在小程序

    2024年02月09日
    瀏覽(22)
  • 微信小程序之訂閱消息推送

    微信小程序之訂閱消息推送

    目錄 1、開(kāi)通訂閱消息 2、請(qǐng)求用戶(hù)授權(quán) 2.1、wx.requestSubscribeMessage(Object object) 2.2、wx.requestSubscribeDeviceMessage(Object object) 3、發(fā)送訂閱信息 3.1、調(diào)用方式 3.2、云調(diào)用接口方法 3.3、請(qǐng)求參數(shù) 3.4、返回值 3.5、代碼示例 登錄小程序之后點(diǎn)擊功能下的 訂閱消息 , 點(diǎn)擊開(kāi)通 選擇公共模

    2024年02月09日
    瀏覽(27)
  • 微信小程序服務(wù)通知(訂閱消息)定時(shí)推送消息功能

    微信小程序服務(wù)通知(訂閱消息)定時(shí)推送消息功能

    首先先說(shuō)項(xiàng)目需求:向預(yù)約參觀的用戶(hù)提前一天晚上8點(diǎn)推送消息。小程序端主要用到的 API 是我是小程序用到的API。以及服務(wù)端用到的 API :我是服務(wù)端用到的API。 1. 開(kāi)通訂閱消息功能 (1)、 首先需要在小程序管理后臺(tái)開(kāi)通訂閱消息功能。沒(méi)開(kāi)通前如下圖所示: (2)、開(kāi)通之

    2024年02月08日
    瀏覽(19)
  • 微信小程序消息推送、接收消息事件、發(fā)送客服消息

    微信小程序消息推送、接收消息事件、發(fā)送客服消息

    文檔地址消息推送 | 微信開(kāi)放文檔 接收消息和事件 | 微信開(kāi)放文檔 發(fā)送客服消息 | 微信開(kāi)放文檔 代碼參考

    2024年02月12日
    瀏覽(22)
  • 微信小程序云開(kāi)發(fā)定時(shí)推送訂閱消息

    微信小程序云開(kāi)發(fā)定時(shí)推送訂閱消息

    (1)點(diǎn)擊訂閱消息 (2)點(diǎn)擊公共模板庫(kù),然后找到想要選用的模板,點(diǎn)擊選用。 (3)在我的模板里面,復(fù)制模板id。 如果找不到想要用的模板,可以在公共模板的最后一頁(yè),點(diǎn)擊下圖中圈出來(lái)的,去申請(qǐng)自己想要的模板。 (1)云函數(shù)部分的代碼 config.json 云函數(shù)配置文件

    2024年02月09日
    瀏覽(20)
  • 微信小程序?qū)崿F(xiàn)訂閱消息推送的實(shí)現(xiàn)步驟

    微信小程序?qū)崿F(xiàn)訂閱消息推送的實(shí)現(xiàn)步驟

    1、準(zhǔn)備工作 ??準(zhǔn)備小程序賬號(hào)、開(kāi)發(fā)環(huán)境,我小程序是基于uniapp開(kāi)發(fā),后臺(tái)代碼基于SpringBoot開(kāi)發(fā)。同時(shí)先閱讀官方文檔,了解小程序訂閱消息和后端如何發(fā)送訂閱消息等相關(guān)知識(shí),官方文檔地址如下: 《小程序訂閱消息》 《發(fā)送訂閱消息》 2、實(shí)現(xiàn)步驟 2.1、啟用并配置

    2024年02月15日
    瀏覽(29)
  • java編寫(xiě)微信小程序消息提醒推送

    java編寫(xiě)微信小程序消息提醒推送

    微信小程序官方文檔:發(fā)送訂閱消息 | 微信開(kāi)放文檔 一. 先制定模板,我以已刪除的模板為例 二.java后臺(tái)創(chuàng)建小程序 Vo類(lèi),用于封裝傳送的參數(shù)。 1.獲取小程序全局后臺(tái)接口調(diào)用憑據(jù),有效期最長(zhǎng)為7200 2.發(fā)送消息給指定的用戶(hù) 3.整合 4.測(cè)試 注意:在前端調(diào)用方法時(shí),只有發(fā)

    2024年02月11日
    瀏覽(23)
  • 關(guān)于微信小程序uniapp版的推送消息

    1.按鈕觸發(fā)推送消息 2.pushMesage方法調(diào)用uniapp自帶的消息推送授權(quán)窗口 值得注意 的是:①tmplIds是一個(gè)數(shù)組,這個(gè)數(shù)組里可以?xún)?chǔ)存多個(gè)模板ID,當(dāng)你需要切換模板進(jìn)行推送時(shí)切換數(shù)組下標(biāo)即可。 ②彈窗授權(quán)需要點(diǎn)擊允許接收來(lái)自小程序的消息提醒,目前微信小程序里面有兩種模

    2024年02月16日
    瀏覽(22)
  • 微信小程序向公眾號(hào)推送消息超詳細(xì)教程

    微信小程序向公眾號(hào)推送消息超詳細(xì)教程

    官方教程 官方教程 開(kāi)通一下服務(wù)號(hào)公眾號(hào) 超級(jí)管理員登錄服務(wù)號(hào)公眾號(hào)后臺(tái) 登錄地址 開(kāi)通模板消息 申請(qǐng)一個(gè)模板消息,獲取模板ID 注意此處的參數(shù),后續(xù)接口需要使用 綁定公眾號(hào)與小程序 官方教程 1.登錄微信公眾號(hào)后臺(tái) 2.點(diǎn)擊小程序管理 3.關(guān)聯(lián)小程序 獲取微信公眾號(hào)

    2024年02月11日
    瀏覽(24)
  • 微信小程序訂閱消息推送(附帶后臺(tái)java代碼)

    官方文檔: 小程序前端:點(diǎn)擊進(jìn)入 小程序服務(wù)端:點(diǎn)擊進(jìn)入 一,代碼實(shí)現(xiàn)(后端) ①定義實(shí)體類(lèi) ②定義HttpUtil類(lèi)(Get請(qǐng)求) ③驗(yàn)證token過(guò)期時(shí)間 ④小程序發(fā)送消息 AuthUtil工具類(lèi)

    2024年02月14日
    瀏覽(22)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包