国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 熱點 > 微信 > 正文

詳解nodejs微信公眾號開發——3.封裝消息響應模塊

2024-07-22 01:17:11
字體:
來源:轉載
供稿:網友

上一篇文章:nodejs微信公眾號開發(2)自動回復,實現了簡單的關注回復。采用拼接字符串的形式,并不是很方便,這里我們將其封裝承接口。

1. ejs模板引擎

不使用拼接字符串的方式,那么模板引擎就是較好的選擇。Nodejs開源模板的選擇很多,程序中使用 EJS,有Classic ASP/PHP/JSP的經驗用起EJS來的確可以很自然,也就是說,你能夠在 <%...%> 塊中安排 JavaScript 代碼,利用最傳統的方式 <%=輸出變量%>(另外 <%-輸出變量是不會對 & 等符號進行轉義的).

2. heredoc

在php、python中都有heredoc方式的字符串定義方法,JavaScript也實現了heredoc模塊,主要解決大量字符串拼接問題。
新建模板文件tpl.js:

'use strict'var ejs = require('ejs');var heredoc = require('heredoc');var tpl = heredoc(function(content){/*  <xml>    <ToUserName><![CDATA[<%= toUserName %>]]></ToUserName>    <FromUserName><![CDATA[<%= fromUserName %>]]></FromUserName>    <CreateTime><%= createTime%></CreateTime>    <MsgType><![CDATA[<%= msgType %>]]></MsgType>    <% if(msgType ==='text') { %>      <Content><![CDATA[<%= content %>]]></Content>    <% }else if(msgType ==='image'){ %>      <Image>        <MediaId><![CDATA[<%= content.mediaId %>]]></MediaId>      </Image>    <% }else if(msgType ==='voice'){ %>      <Voice>        <MediaId><![CDATA[<%= content.mediaId %>]]></MediaId>      </Voice>    <% } %>else if(msgType ==='video'){ %>      <Video>        <MediaId><![CDATA[<%= content.mediaId %>]]></MediaId>        <Title><![CDATA[<%= content.title %>]]></Title>        <Description><![CDATA[<%= content.description %>]]></Description>      </Video>       <% } %>else if(msgType ==='music'){ %>      <Music>        <Title><![CDATA[<%= content.title %>]]></Title>        <Description><![CDATA[<%= content.description %>]]></Description>        <MusicUrl><![CDATA[<%= content.musicUrl %>]]></MusicUrl>        <HQMusicUrl><![CDATA[<%= content.hqMusicUrl %>]]></HQMusicUrl>        <ThumbMediaId><![CDATA[<%= content.thumbMediaId %>]]></ThumbMediaId>        </Music>    <% } %>else if(msgType ==='news'){ %>      <ArticleCount><%= content.length %></ArticleCount>      <Articles>        <% content.forEach(function(item){ %>        <item>          <Title><![CDATA[<%= item.title %>]]></Title>           <Description><![CDATA[<%= item.description %>]]></Description>          <PicUrl><![CDATA[<%= item.picUrl %>]]></PicUrl>          <Url><![CDATA[<%= item.url %>]]></Url>        </item>        <% }) %>      </Articles>    <% } %>    </xml>*/});var compiled = ejs.compiled(tpl);exports = module.exports = {  compiled:compiled};            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 闻喜县| 新安县| 柏乡县| 江山市| 霍邱县| 庆阳市| 休宁县| 巴林右旗| 岳普湖县| 乐山市| 卫辉市| 南和县| 米泉市| 天全县| 永年县| 肃北| 东阿县| 红桥区| 虞城县| 沂南县| 华阴市| 新巴尔虎右旗| 凤山县| 巴楚县| 葫芦岛市| 蓬溪县| 林州市| 东明县| 吉首市| 兖州市| 大关县| 习水县| 昭平县| 山西省| 庆阳市| 鄂托克旗| 乌恰县| 万盛区| 华蓥市| 铜梁县| 永新县|