node.js微信公众平台开发之Token验证
2017-04-10 16:21
447 查看
进行微信公众平台的开发,进行token验证是第一步,如下图所示。url填写自己的服务器地址。Token这里可以自定义,但是要和代码中的Token保持一致。
node.js代码如下:
var crypto = require('crypto');
var url = require('url');
exports.wechat = function(req,res){
var query = url.parse(req.url,true).query;
var signature = query.signature;
var timestamp = query.timestamp;
var nonce = query.nonce;
var echostr = query.echostr;
if(check(timestamp,nonce,signature,"weixin")){
res.end(echostr);
}else{
res.end("It is not from weixin");
}
};
function check(timestamp,nonce,signature,token){
var currSign,tmp;
tmp = [token,timestamp,nonce].sort().join("");
currSign = crypto.createHash("sha1").update(tmp).digest("hex");
return (currSign === signature);
};
获取url中包含的signature,timestamp,nonce,echostr。然后将token,timestamp,nonce按照字典序排列。并且加密,再与接收到的signature进行比对,如果相同,则是来自微信的请求,反之则不是。
node.js代码如下:
var crypto = require('crypto');
var url = require('url');
exports.wechat = function(req,res){
var query = url.parse(req.url,true).query;
var signature = query.signature;
var timestamp = query.timestamp;
var nonce = query.nonce;
var echostr = query.echostr;
if(check(timestamp,nonce,signature,"weixin")){
res.end(echostr);
}else{
res.end("It is not from weixin");
}
};
function check(timestamp,nonce,signature,token){
var currSign,tmp;
tmp = [token,timestamp,nonce].sort().join("");
currSign = crypto.createHash("sha1").update(tmp).digest("hex");
return (currSign === signature);
};
获取url中包含的signature,timestamp,nonce,echostr。然后将token,timestamp,nonce按照字典序排列。并且加密,再与接收到的signature进行比对,如果相同,则是来自微信的请求,反之则不是。
相关文章推荐
- 微信公众平台接口开发-接入验证测试token
- 微信公众平台开发Token验证失败(有时URL超时)--解决方案
- token验证-微信公众平台开发3(asp.net)
- Node.js开发教程之基于OnceIO框架实现文件上传和验证功能
- Node.js开发第三方微信公众平台
- VB.net 微信公众平台开发(一) Token验证
- 微信公众平台开发——token验证失败
- 微信公众平台开发(1)验证TOKEN源码
- node.js+captchapng+jsonwebtoken实现登录验证示例
- 微信公众平台开发问题——token验证失败
- node.js微信公众平台开发教程
- 用node.js进行微信公众平台的开发
- 微信公众平台消息接口开发(2)你的服务器没有正确响应Token验证的解决方法
- 【Node.js 微信公众号实战】1.Node.js 接入微信公众平台开发
- 用node.js进行微信公众平台的开发
- 微信公众平台开发 Node.js SDK
- 基于PHP的微信公众平台开发(TOKEN验证,消息回复)
- 微信公众平台消息接口开发(2)你的服务器没有正确响应Token验证的解决方法
- Node.js开发教程之基于OnceIO框架实现文件上传和验证功能