在微信公众平台的基本信息里面的,修改服务器配置后会有下面的界面。
EncodingAESKey是随机生成的,加密方式根据需要自己选择。
关于URL和Token:
URL:填写之后会向这个URL发送一个get请求。
请求有以下几个参数:
timestamp: 生成签名的时间戳
nonceStr: ,生成签名的随机串
signature: 签名
echostr: 随机字符串
Token:可以随便填一个数字和字母组合,后面接口中需要用到
接口中的处理:
//需要先加载sha1模块
var express = require('express');
var router = express.Router();
var sha1 = require('sha1');
router.get('/validateToken', function(req,res) { var config = { "appID": "wx0194083e217285f5", "appsecret": "65657a732d1978b56f7b1da396a3f351", "token":"wechat" } var signature = req.query.signature, timestamp = req.query.timestamp, nonce = req.query.nonce, echostr = req.query.echostr; // token、timestamp、nonce三个参数进行字典序排序 var arr = [config.token, timestamp, nonce].sort().join(''); // sha1加密 var result = sha1(arr); console.log(); if(result === signature){ res.send(echostr); }else{ res.send('mismatch'); } })
这样的话调用这个URL的接口 token验证就可以通过了