This article mainly introduces the detailed development of nodejs WeChat public account - 1. Accessing the WeChat public account is of great practical value. Friends in need can refer to the following
Accessing the WeChat public account is developed The first step is difficult at the beginning. If you take the first step well, the road ahead will be broader.
1. Use of public platform test accounts
Log in to the WeChat public platform. Since many developers do not have certified WeChat public accounts, Therefore, a more compromise method is to use the public platform test account
to test functions. The advantage is that it can test most functions of the WeChat official account without being restricted by the certification threshold.
Enter the test account management interface:
We need to configure the information of the interface , URL
and Token
are the bridge connecting WeChat public platform and local development services.
After WeChat is configured, scan the test number QR code below to test the developed function on your mobile phone.
2. Verify the public account
A picture is worth a thousand words. When accessing the official account, the WeChat public platform needs to verify the identity of the developer and send a GET request to the URL filled in by the developer. The request contains 4 parameters: signature
, <a href="//m.sbmmt.com/wiki/1343.html" target="_blank">echo</a>str
, <a href="//m.sbmmt.com/wiki/1268.html" target="_blank">time</a>stamp
and nonce
, what we need to do after receiving this request:
Dictionary sort the three parameters token
, timestamp
and nonce
;
Sort the three String is spliced into a string for sha1 encryption;
compares the encrypted string with signature
, if they are the same, it means that the request comes from WeChat, we directly return the content of echostr as it is, and the access verification is successful.
3. Build a development server
There are many ways to build a development server, such as purchasing a cloud server, using peanut shells, ngrok , localtunnel, etc. Localtunnel is used here for simplicity. First install globallylocaltunnel
,
npm install -g lt
Start lt
lt --port 8080 //对外暴露8080端口,可端口号可自己随便设定
4. Write code
Okay, Now start writing the app.js code:
'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. Configure the test public account information
The code is written, and now the formal configuration begins. Enter lt --port 8080
in the terminal to start localtunnel and get the externally accessible URL
:
## Fill in the URL to the
URL in the
test account management interface, and the
Token field can be filled in at will. For convenience, use
wemovie Bar!
Note:
to submit at first The prompt is the yellow bar
Configuration failed, you need to click the button one or two more times;
URL and then reconfigure. (This is the price you pay for choosing simplicity T_T)
The above is the detailed content of Analysis of nodejs WeChat public account development - 1. Access the WeChat public account. For more information, please follow other related articles on the PHP Chinese website!