服务器配置
的主要难点就是Token验证
。
官方文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432
接入指南:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421135319
用户服务器端
主要需要做的工作,就是返回echostr
我使用的是hapi
做为后台框架,核心代码如下:
// 路由
server.route({
method: 'GET',
path: '/wx',
options: {
tags: ['api'],
description: '微信验证',
auth: false,
},
handler: (request, h) => {
const { query } = request;
return tokenCheck(query)
}
});
// 微信公众号 服务器接入检测
tokenCheck(query) {
const token = this.options.token;
const { signature, nonce, timestamp, echostr } = query;
const str = [token, timestamp, nonce].sort().join('');
const sha = sha1(str);
if (sha === signature) {
return echostr;
} else {
return false;
}
};
搞定。