wechat 使用本地服务代理,实现本地微信开发

开源代码请点击

1. 域名、服务器和localtunnel 的配置

1.1 应用服务器通过域名与微信服务器实现连接最终与微信实现连接

wechat 使用本地服务代理,实现本地微信开发_第1张图片
图 1.1

1.2 本地测试阶段时可以通过localtunnel 搭建本地服务器以充作应用服务器

wechat 使用本地服务代理,实现本地微信开发_第2张图片
图 1.2

npm install -g loacltunnel 安装localtunnel 映射工具
python -m SimpleHttpSever 3100 通过python 开启一个本地服务

图 1.3

lt --port 端口号 通过localtunnel 工具把服务影射到外网

wechat 使用本地服务代理,实现本地微信开发_第3张图片
图 1.4
wechat 使用本地服务代理,实现本地微信开发_第4张图片
图 1.5

2. 配置、接入微信公众号

2.1 配置微信公众号

登陆微信开发者平台配置微信开发者接口信息

wechat 使用本地服务代理,实现本地微信开发_第5张图片
图 2.1

微信公众号的验证逻辑

wechat 使用本地服务代理,实现本地微信开发_第6张图片
图 2.1
wechat 使用本地服务代理,实现本地微信开发_第7张图片
图 2.2

2.2 通过code 接入微信开发者平台

先是创建app.js 文件

'use strict'
const Koa = require('koa');
const app = new Koa();
var sha1 = require('sha1')
var config = {
    wechat: {
        appID: 'wx5b71b0f7a4dac611',
        appSecret: 'e0eac8fcaca226c23d94ca379aab77aa',
        token: 'gufanyuanyingbikongjin'
    
    }
}
app.use(async function (ctx, next) {
    // console.log(ctx)
    console.log(ctx.query)
    var token = config.wechat.token
    var signature = ctx.query.signature
    var nonce = ctx.query.nonce
    var timestamp = ctx.query.timestamp
    var echostr = ctx.query.echostr

    var str = [token, timestamp, nonce].sort().join('')
    var sha = sha1(str)

    if (sha === signature){
        ctx.body = echostr + ''
    }
    else {
        ctx.body = 'wrong'
    }
});

app.listen(3721)
console.log('listening: 3721')

然后运行app.js
接着通过localtunnel 将本地的服务的IP地址影射到外网
最后把影射的IP地址填写在Wechat 配置文件里进行验证

你可能感兴趣的:(wechat 使用本地服务代理,实现本地微信开发)