本篇文章主要介紹了詳解nodejs微信公眾號開發-1.接入微信公眾號,非常具有實用價值,需要的朋友可以參考下
接入微信公眾號是開發的第一步,萬事起頭難,走好第一步,後面的路就更寬廣。
1.公眾平台測試帳號的使用
#登入微信公眾平台,由於許多開發人員並沒有認證的微信公眾號,所以比較折中的方式是使用公眾平台測試帳號
來測試功能,其優點是能夠測試微信公眾號的絕大部分功能,不受認證門檻的限制。
進入測試帳號管理介面:
我們需要設定介面的信息,URL
和Token
是微信公眾平台和本地開發服務建立連結的橋樑。
微信配置好後,掃面下方的測試號二維碼,也就是可以在手機上測試開發的功能。
2.驗證公眾號
#一圖勝千言。接取公眾號時,微信公眾平台需要驗證開發者的身份,向開發者填寫的URL發送一個GET請求,請求中包含4個參數:signature
、<a href="http://www.php.cn/wiki/1343.html" target="_blank">echo</a>str
、<a href="http://www.php.cn/wiki/1268.html" target="_blank">time</a>stamp
和nonce
,收到該請求,我們需要做的事情:
-
將
token
、timestamp
和nonce
三個參數進行字典排序; #將加密後的字串與
signature
進行比較,如果相同,表示這個請求來自微信,我們直接原樣回傳echostr的內容,接入驗證成功。
3.建立開發伺服器
#建置開發伺服器的方式有很多,如購買雲端伺服器、使用花生殼、ngrok 、localtunnel等。這裡為了簡單起見採用localtunnel。先全域方式安裝localtunnel
,
npm install -g lt
啟動lt
lt --port 8080 //对外暴露8080端口,可端口号可自己随便设定
4.寫程式碼
好了,現在開始寫app.js的程式碼:
'use strict' var Koa = require('koa'); var sha1 = require('sha1'); var config = { wechat:{ appID:'...', //填写你自己的appID appSecret:'...', //填写你自己的appSecret token:'...' //填写你自己的token } }; var app = new Koa(); app.use(function *(next){ var token = config.wechat.token; var signature = this.query.signature; var nonce = this.query.nonce; var timestamp = this.query.timestamp; var echostr = this.query.echostr; var str = [token,timestamp,nonce].sort().join(''); //按字典排序,拼接字符串 var sha = sha1(str); //加密 this.body = (sha === signature)? echostr + '' : 'failed'; //比较并返回结果 }); app.listen(8080);
5.設定測試公眾號資訊
程式碼寫完畢,現在開始正式設定囉。在終端機中輸入lt --port 8080
啟動localtunnel,得到對外可存取的URL
:
URL填寫到
測試帳號管理介面中的
URL,
Token欄位可隨意填寫,方便起見,就用
wemovie#吧!
註:
- #由於localtunnel不是很穩定,所以可能一開始就點擊
提交
提示的是黃條的
配置失敗,需要多點一兩次按鈕;
- 每次重啟程序,都需要重新啟動localtunnel取得新的
URL
,然後重新配置。 (這就是選擇簡單付出的代價T_T)
以上是解析nodejs微信公眾號開發之-1.接取微信公眾號的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

Atom編輯器mac版下載
最受歡迎的的開源編輯器

Dreamweaver CS6
視覺化網頁開發工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。