摘要:
微信,龐大的用戶基數,極強的用戶黏性,在近兩年吸引了無數的開發者註意力。 Nodejs,近兩年發展非常快速的開發工具,尤其適合打造行動後台。本文就以筆者自己開發的實例,來描述如何基於Nodejs開發屬於自己的微信公眾號。在這個實例中,主要使用到了express, wechat, mongodb, monk等模組。
前期準備:
1.申請微信公眾號,前往 https://mp.weixin.qq.com/ 申請,這裡不做過多闡述。
2. 購買伺服器, 這裡推薦Amazon的EC2,首次用戶可選擇micro instance,一年免費,申請很方便,只需輸入自己的信用卡資訊即可,只是整個過程是全英文,不過年免費呦,多花點時間也是值得的。
安裝NodeJs開發環境:
實例介紹:
筆者所在班級組了個足球隊,大家統一把錢交到隊長手裡,由隊長支付每次費用,並記錄每人費用和餘額並通知大家。由於不是每次所有人都能來,而費用只能由參加活動的人以AA方式平攤,記錄起來比較麻煩。於是筆者就做了個微信公眾號,每次只需要輸入活動消費金額和選擇參與人數,即可自動生成每人花費和餘額,此後把明細發到微信群裡,每個人就可以看見了。
在這個實例中,筆者實際上搭建了一個微網站,透過Web頁面來記錄或顯示活動花費和餘額。微信公眾號就相當於在用戶微信和微網站之間搭起了一個橋樑,當微信用戶關注筆者的公眾帳號時,透過微信公眾平台開發者模式,即可自動給微信用戶回覆使用協助。在幫助裡,包含了操作對應的web link,只需要點擊即可進入對應頁面。
建構微信公眾號後台服務:
萬事具備,只欠開發了:)
開始之前,先簡單介紹下express和wechat 兩個模組:
express - 優秀的Web開發框架, 使用express,可以非常快速的建立自己的網站。由於微信伺服器會透過HTTP Post請求來和開發者伺服器交互,所以需要使用express框架。
以下是有新用戶追蹤時的log,103.7.30.84為微信伺服器的IP位址。
URL とトークンを構成します。例は次のとおりです:
WeChat サーバーのアクセス認証と自動応答:
app.js を変更します。対応するコードは次のとおりです:
app.use('/users', users);
app.use('/weixin', weixin);
app.use(express.query()); // または app.use(express.query());
app.use('/wechat', wechat('hchismylove', function (req, res, next) {
// WeChat の入力情報はすべて req.weixin
にあります
var message = req.weixin;
console.log(メッセージ);
if((message.MsgType == 'event') && (message.Event == 'subscribe'))
{
var raiseStr = "1. クリックしてチームのリチャージを記録します"
var ConsumerStr = "2. クリックしてチームの消費量を記録します"
var deleteStr = "3. クリックしてレコードをロールバックします"
var HistoryStr = "4. クリックして履歴をクエリ"
var emptyStr = " " ";
var ReplyStr = "ご清聴ありがとうございました!" "n" emptyStr "n" replaceStr "n" emptyStr "n" ConsumerStr
"n" emptyStr "n" deleteStr "n" emptyStr "n" HistoryStr;
res.reply(replyStr);
}
}));