纯属分享

app.js

var express = require('express');
var path = require('path');
var app = express();
var port = process.env.port||8000;

var wx = require('./admin/wx/wx.js');

//token认证--get请求
app.get('/wx',wx.token);

wx.js

var config = require('./config/config.js');  
var API = require('wechat-api'); 
var url = require("url");
var crypto = require("crypto");
function wx(){
    //token认证
    this.token = function(req,res){
        function sha1(str){
        var md5sum = crypto.createHash("sha1");
        md5sum.update(str);
        str = md5sum.digest("hex");
        return str;
        }
        var query = url.parse(req.url,true).query;
        var signature = query.signature;
        var echostr = query.echostr;
        var timestamp = query['timestamp'];
        var nonce = query.nonce;
        var oriArray = new Array();
        oriArray[0] = nonce;
        oriArray[1] = timestamp;
        oriArray[2] = "weixin";//这里是你在微信开发者中心页面里填的token,而不是****
        oriArray.sort();
        var original = oriArray.join('');
        var scyptoString = sha1(original);
        if(signature == scyptoString){
            res.end(echostr);
            console.log("确认成功!");
        }else {
            res.end("false");
            console.log("失败!");
        }
    }
}
module.exports = new wx();

 

posted on 2017-02-04 22:16  浅唱年华1920  阅读(194)  评论(0编辑  收藏  举报