|>第一篇 实现加密认证逻辑<|微信订阅号开发

|>第一篇 实现加密认证逻辑<|微信订阅号开发_第1张图片

|>第一篇 实现加密认证逻辑<|微信订阅号开发_第2张图片

request

网络请求我们使用request 它是对原生的HTTP request的封装

ejs

微信的数据包装方式是XML ,所有我们借助ejs 这个模板库,把数据作为变量替换XML 字符中

lodash 和Heredoc
lodash 是一些常用的方法集,做数组拆分 ,类型判断等等

Heredoc 是黑科技 把函数体里面的多行的注降低拼接字符串释作为字符串提取出来主要用来降低拼接字符串的成本

raw-body 用来获取一个http请求返回的可读流的类容实体

sha1
哈希算法库

xml2js
微信服务器返回的数据既然是xml格式 我们没法直接在js 函数中使用,所有会借助XML2js这个模块把XML数据解析为js 对象,方便我们使用


|>第一篇 实现加密认证逻辑<|微信订阅号开发_第3张图片

|>第一篇 实现加密认证逻辑<|微信订阅号开发_第4张图片

服务器及 ngrok 环境配置

ngrok

传统我们需要一个域名 用来微信服务器和你的域名服务器来交互

|>第一篇 实现加密认证逻辑<|微信订阅号开发_第5张图片

没有域名我们就要用ngrok 隐射到外网
|>第一篇 实现加密认证逻辑<|微信订阅号开发_第6张图片

②备选方案
www.tunnel.mobi

  1. 先用苹果自带的Python启动一个端口这里写图片描述
  2. 这里写图片描述

③ npm install -g localtunnel |>第一篇 实现加密认证逻辑<|微信订阅号开发_第7张图片
端口隐射这里写图片描述


登录微信开发者平台
|>第一篇 实现加密认证逻辑<|微信订阅号开发_第8张图片



'use strict';

var Koa = require('koa');
var sha1 = require('sha1');
var config = {
    wechat: {
    appID:'3f7',
        appSecret:'7fca3c2d051c8fc84467',
        token:'etolearn'
}
};
var  app = new Koa();
app.use(function *(next) {
    console.log(this.query)
});
app.listen(1234);

console.log('地址: 1234');

npm install koa sha1
安装框架和加密模块
node –harmony app.js
在浏览器中得到的结果如下

|>第一篇 实现加密认证逻辑<|微信订阅号开发_第9张图片


接下来实现验证逻辑

你可能感兴趣的:(node.js,函数,微信,加密,数据)