• nodejs----微信注册测试号获取token


    var PORT=8081;                 //监听8080端口号
    var http=require('http');  
    var qs=require('qs');
    var TOKEN='yezhenxu';           //必须与测试号所填写的Token相同
    
    function checkSignature(params,token){
        var key=[token,params.timestamp,params.nonce].sort().join(''); 
         //将token (自己设置的) 、timestamp(时间戳)、nonce(随机数)三个参数进行字典排序
        var sha1=require('crypto').createHash('sha1');
         //将上面三个字符串拼接成一个字符串再进行sha1加密
        sha1.update(key);
        return sha1.digest('hex') ==params.signature;
         //将加密后的字符串与signature进行对比,若成功,返回echostr
    }
    
    var server=http.createServer(function (request,response) {
       var query=require('url').parse(request.url).query;
        var params=qs.parse(query);
    
        console.log(params);
        console.log("token :",TOKEN);
    
    
        if(!checkSignature(params,TOKEN)){
            //如果签名不对,结束请求并返回
            response.end('signature fail');
        }
    
        if (request.method == "GET") {
            //如果请求是GET,返回echostr用于通过服务器有效校验
            response.end(params.echostr);
        }else{
            //否则是微信给开发者服务器的POST请求
            var postdata='';
            request.addListener("data",function(postchunk){
                postdata+=postchunk;
            });
            //获取到了POST数据
            request.addListener("end",function(){
                console.log(postdata);
                response.end('success ');
            });
        }
    });
    
    server.listen(PORT, function () {
        console.log('Server running at port:'+PORT);
    });
    

      

  • 相关阅读:
    今天还要去一次北仑
    重归漫漫长路
    双休日,累
    调整心情,迎接新的挑战
    多喝点水,对身体有好处
    丈人生病住院了
    WPF,DataGrid数据绑定
    AXIS2简介
    心事一件件的了掉,希望一切都能恢复到正常
    驾车是种乐趣,也是种累
  • 原文地址:https://www.cnblogs.com/w-s-l123/p/10541540.html
Copyright © 2020-2023  润新知