微信程式開發系列教程(四)使用微信API建立公眾號自定義選單
大家可能經常看到一些微信公眾號具有功能強大的自定義選單,點選之後可以訪問很多有用的功能。
這篇教程就教大家如何動手做一做。
這個教程最後實現的效果是:建立一個一級選單“UI5", 點選之後彈出兩個二級選單,如下圖藍色區域所示。每個二級選單都能完成一些任務。
那麼用什麼API建立這些自定義選單呢?微信公眾號平臺技術文件中,點選"自定義選單":
文件裡給了建立自定義選單需要維護引數的HTTPpost報文的格式:
回到我的例子,我用postman傳送這個HTTP post請求:
這是我HTTP post的報文內容:
{"button":[ {"name":"UI5","sub_button":[{"type": "view","name": "Jerry List","url": "http://wechatjerry.herokuapp.com/ui5"},{"type": "click","name": "Other UI5 application","key": "dataQuery"}] } ] }
上述json格式的報文定義了一個一級選單,標籤文字為UI5。兩個二級選單(sub_button),型別分別為view和click。
view型別即繫結一個HTML頁面到該二級選單,點選之後跳轉到這個頁面去。我的例子繫結的html頁面是 http://wechatjerry.herokuapp.com/ui5 。 型別為click的選單很好理解,點選後,微信平臺會傳送一個事件給您公眾號的微信伺服器上。您需要在您的微信伺服器裡對這個時間做處理。事件型別通過引數key指定,我上述例子的型別是dataQuery,這個引數可以隨意指定。
響應型別為click的微信自定義二級選單的虛擬碼如下:
app.route('/').post(function(req,res){ req.on("end",function(){ var msgType = formattedValue(getXMLNodeValue('MsgType', content)); if( msgType === "event"){ var eventKey = formattedValue(getXMLNodeValue('EventKey', content)); if( eventKey === "dataQuery"){ // 響應微信自定義二級選單的點選 } } } );
要獲取更多Jerry的原創技術文章,請關注公眾號"汪子熙"或者掃描下面二維碼:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2200088/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 微信公眾號開發5-自定義選單-微信開發phpPHP
- TNW-微信公眾號自定義選單TNW
- 微信公眾號開發
- 8.PHP微信公眾平臺開發 自定義選單功能PHP
- 微信公眾號選單的配置
- 微信公眾號,H5自定義分享H5
- Nodejs微信公眾號開發NodeJS
- .net開發微信公眾號
- 微信公眾號開發-分享
- 微信公眾號更新新增選單
- 微信開發系列之一 - 微信公眾號開發的開發環境搭建開發環境
- 微信公眾號連結自定義分享總結
- Python開發微信公眾號後臺(系列二)Python
- 微信公眾號開發教程(一) 驗證接入
- 微信程式開發系列教程(三)使用微信API給微信使用者發文字訊息API
- 微信公眾號投票活動製作教程 微信公眾號投票怎麼弄?
- 微信公眾號開發 —— 微信網頁授權小記網頁
- 微信公眾號開發之坑(一)
- Python+Tornado開發微信公眾號Python
- PHP微信公眾號開發——公共方法PHP
- 【Java】微信公眾號開發筆記Java筆記
- Laravel+easywechat 開發微信公眾號Laravel
- 微信小程式下拉選單自定義元件微信小程式元件
- 微信公眾號讚賞功能開通方法 微信公眾號讚賞如何開通
- 微信公眾號測試號開發小結
- SAP系統和微信整合的系列教程之二:如何通過微信公眾號消費APIAPI
- 微信公眾號開發推送事件排重事件
- 微信公眾號支付開發手記(node)
- 記一次微信公眾號開發
- 微信公眾號開發Django JSSDK授權DjangoJS
- 微信公眾號開發(一)基礎配置
- Spring Boot 開發微信公眾號後臺Spring Boot
- 微信公眾號開發之客服訊息
- 微搜網·微信公眾號大全
- 【微信部落】tp5+ionic開發微信公眾號商城系統
- 微信公眾號智慧回答
- 微信公眾號託管
- 某微信公眾號AI文章清單AI