在微信公众平台设置开发服务器,需要通过token验证。
小程序开发流程
在微信开发平台开发设置
微信小程序只是一种客户端,后台服务需要自己有服务器。要求基于SSL的业已备案过的域名,只能用80端口。
登录微信公众平台,【开发】->[开发设置],填写你的域名。
在点击【保存并提交】会进行验证。先来说说在服务器端怎么设置?我们基于KOA搭建服务。可连接到我的git hub,clone到服务器直接使用。或按以下步骤一步一步创建。
mkdir vx_server
cd vx_server
npm init
npm install --save-dev koa-router
npm install --save-dev raw-body
npm install --save-dev sha1
touch app.js
以下是app.js代码:
const Koa = require('koa');
const router = require('koa-router')();
const sha1 = require('sha1')
const token = 'your token' //微信平台开发设置中的token字符串
const app = new Koa();
app.proxy=true;
app.use(async (ctx,next) => {
console.log(`Process $(ctx.request.method) $(ctx.request.url)...`)
await next();
});
router.get('/' , async(ctx,next)=>{
const { signature, timestamp, nonce, echostr } = ctx.query
const token = token // 微信后台定义的token字符串
const params = [ token, timestamp, nonce ].sort()
// 连接
const str = sha1(params.join(""))
if(str == signature) // 本地加密的数据与传过来的加密字符串相等
return ctx.body = echostr // 直接返回随机字符串
else return ctx.body = "fail" //不匹配则认证失败
})
app.use(router.routes());
app.listen(3000);
console.log('App start at port 300...');
运行服务
node app.js