zoukankan      html  css  js  c++  java
  • NodeJS 微信公共号开发

    背景

    使用 NodeJS 进行微信公共号开发,首先需要响应微信发送的Token验证,官方文档

    填写服务器配置

    登录微信公共平台,在开发下的基本配置打开该页面。

    依次填写接口的 URL、自定义的 Token、点击随机生成生成 EncodingAESKey、将消息加密方式选择为明文模式,点击提交时微信会进行服务器的 Token 验证。

    响应微信发送的Token验证

    项目使用 express 开发,中间件 wechatAuth 如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    var app = express();

    const crypto = require('crypto');
    const url = require('url');

    //进行sha1加密
    function sha1(str) {
    let shasum = crypto.createHash("sha1");
    return shasum.update(str,'utf-8').digest("hex");
    }

    function wechatAuth(req, res) {
    let signature = req.query.signature;
    let echostr = req.query.echostr;
    let timestamp = req.query.timestamp;
    let nonce = req.query.nonce;

    let reqArray = [nonce, timestamp, process.env.WX_TOKEN]; // process.env.WX_TOKEN对应填写服务器配置内的 Token

    reqArray.sort(); //对数组进行字典排序
    let sortStr = reqArray.join(''); //连接数组
    let sha1Str = sha1(sortStr.toString().replace(/,/g,""));
    if (signature === sha1Str) {
    res.end(echostr);
    } else {
    res.end("false");
    console.log("授权失败!");
    }
    }

    app.use('/wx/token',wechatAuth); // 对应填写服务器配置内的 URL

    服务器上线后点击基本配置打开该页面内的提交即可

  • 相关阅读:
    Client-Side Attacks
    Web Penetration Testing w3af fierce
    解决kali linux 升级后安装w3af 问题
    Metasploit (二)
    Metasploit
    Dig skipfish proxystrike
    Web Penetration Testing
    Wireless Penetration Testing(命令总结)
    LabView(控件部分)
    Wireless Penetration Testing(7-11 chapter)
  • 原文地址:https://www.cnblogs.com/kkdn/p/8963288.html
Copyright © 2011-2022 走看看