最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解nodejs微信公眾號(hào)開(kāi)發(fā)——4.自動(dòng)回復(fù)各種消息

 更新時(shí)間:2017年04月11日 16:53:44   作者:芒果屋里的貓  
這篇文章主要介紹了詳解nodejs微信公眾號(hào)開(kāi)發(fā)——4.自動(dòng)回復(fù)各種消息,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

上一篇文章:nodejs微信公眾號(hào)開(kāi)發(fā)——3.封裝消息響應(yīng)模塊,實(shí)現(xiàn)了對(duì)消息接口的模塊化處理,方便后期的使用,本篇文章將介紹微信公眾號(hào)回復(fù)各種消息的功能實(shí)現(xiàn),包括文本、圖片、語(yǔ)音、視頻、音樂(lè)、圖文等。

:感覺(jué)最近localtunnel很不穩(wěn)定,測(cè)試起來(lái)比較麻煩,有條件的自己搞個(gè)云服務(wù)器吧,我比較偷懶,幾繼續(xù)使用localtunnel了。

1. 被動(dòng)回復(fù)用戶(hù)消息

當(dāng)用戶(hù)發(fā)送消息給公眾號(hào)時(shí)(或某些特定的用戶(hù)操作引發(fā)的事件推送時(shí)),會(huì)產(chǎn)生一個(gè)POST請(qǐng)求,開(kāi)發(fā)者可以在響應(yīng)包(Get)中返回特定XML結(jié)構(gòu),來(lái)對(duì)該消息進(jìn)行響應(yīng)(現(xiàn)支持回復(fù)文本、圖片、圖文、語(yǔ)音、視頻、音樂(lè))。發(fā)送被動(dòng)響應(yīng)消息是對(duì)微信服務(wù)器發(fā)過(guò)來(lái)消息的一次回復(fù)。

開(kāi)發(fā)過(guò)程中如果遇到該公眾號(hào)暫時(shí)無(wú)法提供服務(wù),請(qǐng)稍后再試的情況,一般是由兩個(gè)原因造成的:

  1. 開(kāi)發(fā)者在5秒內(nèi)未回復(fù)任何內(nèi)容
  2. 開(kāi)發(fā)者回復(fù)的數(shù)據(jù)異常,非xml格式,比如JSON數(shù)據(jù)

具體的消息規(guī)則可參看微信平臺(tái)開(kāi)發(fā)者文檔:被動(dòng)回復(fù)用戶(hù)消息

2. 回復(fù)消息的實(shí)現(xiàn)

我們之前的關(guān)注自動(dòng)回復(fù)是在weixin.js里面實(shí)現(xiàn)的,其他的消息回復(fù)也寫(xiě)在這個(gè)文件里面:

if(message.MsgType === 'event'){
  if(message.Event === 'subscribe'){
    if(message.EventKey) {
      console.log('掃描二維碼關(guān)注:'+ message.EventKey +' '+ message.ticket);
    }
    this.body = '終于等到你,還好我沒(méi)放棄';
  }else if(message.Event === 'unsubscribe'){
    this.body = '';
    console.log(message.FromUserName + ' 悄悄地走了...');
  }else if(message.Event === 'LOCATION'){
    this.body = '您上報(bào)的地理位置是:'+ message.Latitude + ',' + message.Longitude;
  }else if(message.Event === 'CLICK'){
    this.body = '您點(diǎn)擊了菜單:'+ message.EventKey;
  }else if(message.Event === 'SCAN'){
    this.body = '關(guān)注后掃描二維碼:'+ message.Ticket;
  }
}
else if(message.MsgType === 'text'){
  var content = message.Content;
  var reply = '你說(shuō)的話:“' + content + '”,我聽(tīng)不懂呀';
  if(content === '1'){
    reply = '金剛:骷髏島';
  }
  else if(content === '2'){
    reply = {
      type:'image',
      mediaId:'http://tu.23juqing.com/d/file/html/gndy/dyzz/2017-04-09/da9c7a64ab7df196d08b4b327ef248f2.jpg'
    }
  }
  else if(content === '3'){
    reply = [{
      title:'金剛.骷髏島',
      description:'南太平洋上的神秘島嶼——骷髏島。史上最大金剛與骷髏蜥蜴的較量。',
      picUrl:'http://tu.23juqing.com/d/file/html/gndy/dyzz/2017-04-09/da9c7a64ab7df196d08b4b327ef248f2.jpg',
      url:'http://www.piaohua.com/html/dongzuo/2017/0409/31921.html' //可下載觀看喔
    }];
  }

  // ... 其他回復(fù)類(lèi)型

  this.body = reply;
}

測(cè)試效果如圖:

3.說(shuō)明:

發(fā)現(xiàn)輸入數(shù)字2并沒(méi)有回復(fù)相應(yīng)的圖片,是不是很奇怪?我們查看一下文檔:

文檔中說(shuō)明了MediaId屬性是通過(guò)素材管理接口上傳多媒體文件,得到的id,而不是我們直接給的網(wǎng)上圖片的url鏈接。在圖文消息中,是可以直接使用url鏈接的。所以我們下一步的工作就是實(shí)現(xiàn)素材管理的接口。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Node.JS更改Windows注冊(cè)表Regedit的方法小結(jié)

    Node.JS更改Windows注冊(cè)表Regedit的方法小結(jié)

    注冊(cè)表是windows操作系統(tǒng)中的一個(gè)核心數(shù)據(jù)庫(kù),這里介紹一些通過(guò)node.js操作注冊(cè)表的幾種方法,感興趣的朋友參考下吧
    2017-08-08
  • node koa2 ssr項(xiàng)目搭建的方法步驟

    node koa2 ssr項(xiàng)目搭建的方法步驟

    這篇文章主要介紹了node koa2 ssr項(xiàng)目搭建的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 實(shí)戰(zhàn)node靜態(tài)文件服務(wù)器的示例代碼

    實(shí)戰(zhàn)node靜態(tài)文件服務(wù)器的示例代碼

    本篇文章主要介紹了實(shí)戰(zhàn)node靜態(tài)文件服務(wù)器的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • Mongoose經(jīng)常返回e11000 error的原因分析

    Mongoose經(jīng)常返回e11000 error的原因分析

    這篇文章主要給大家分析了Mongoose經(jīng)常返回e11000 error的原因,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考價(jià)值,需要的朋友可以們下面來(lái)一起看看吧。
    2017-03-03
  • Node.js?中的?RSA?加密、解密、簽名與驗(yàn)證

    Node.js?中的?RSA?加密、解密、簽名與驗(yàn)證

    RSA加密算法因其非對(duì)稱(chēng)的特性,廣泛應(yīng)用于數(shù)據(jù)的加密、解密、簽名和驗(yàn)證等安全領(lǐng)域,本文主要介紹了Node.js?中的?RSA?加密、解密、簽名與驗(yàn)證,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-08-08
  • Nestjs自定義注解實(shí)現(xiàn)接口權(quán)限控制詳解

    Nestjs自定義注解實(shí)現(xiàn)接口權(quán)限控制詳解

    這篇文章主要為大家介紹了Nestjs自定義注解實(shí)現(xiàn)接口權(quán)限控制詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • node使用crypto模塊為用戶(hù)密碼加密

    node使用crypto模塊為用戶(hù)密碼加密

    本文主要介紹了node使用crypto模塊為用戶(hù)密碼加密,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • node后端服務(wù)?;畹膶?shí)現(xiàn)

    node后端服務(wù)?;畹膶?shí)現(xiàn)

    這篇文章主要介紹了node后端服務(wù)?;畹膶?shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • 深入解析Nodejs中的大文件讀寫(xiě)

    深入解析Nodejs中的大文件讀寫(xiě)

    這篇文章主要介紹了深入解析Nodejs中的大文件讀寫(xiě),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • node.js中module模塊的功能理解與用法實(shí)例分析

    node.js中module模塊的功能理解與用法實(shí)例分析

    這篇文章主要介紹了node.js中module模塊的功能理解與用法,結(jié)合實(shí)例形式分析了node.js module模塊的基本功能、原理、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2020-02-02

最新評(píng)論

汾阳市| 开阳县| 平谷区| 枣阳市| 山丹县| 阜南县| 青阳县| 宜君县| 宕昌县| 乌拉特后旗| 庄河市| 延寿县| 通州区| 安康市| 吴忠市| 瓮安县| 南江县| 龙门县| 浠水县| 溧阳市| 桓仁| 金昌市| 文昌市| 厦门市| 灵璧县| 香港 | 无极县| 曲阳县| 湖南省| 鲁山县| 和田县| 黄浦区| 茂名市| 虎林市| 广州市| 镇原县| 山东省| 资中县| 兴隆县| 林甸县| 芜湖县|