小程序server-实现会话层开发教程: 1.安装MongoDB #安装 MongoDB及其客户端命令行工具 yum install mongodb-server mongodb -y #查看版本 mongod --version mongo --version
2.启动 MongoDB #创建目录,用于 MongoDB 数据和日志存储 mkdir -p /data/mongodb mkdir -p /data/logs/mongodb #启动 MongoDB 注:首次启动可能会花费大概 1min 时间 mongod --fork --dbpath /data/mongodb --logpath /data/logs/mongodb/wxpro.log #可以使用下面的命令来检查是否启动成功 #注:MongoDB 默认监听 27017 端口 netstat -ltp | grep 27017
3.添加 MongoDB 用户
#登录本地 MongoDB 服务mongo #创建用户 wxprouse wxpro;db.createUser({ user: 'wxpro', pwd: 'wxpro****', roles: ['dbAdmin', 'readWrite']}); #退出 exit 4.安装 Node 模块
实现小程序的会话功能,我们需要安装 connect-mongo 和 wafer-node-session cd /var/www/wxpro/npm install connect-mongo wafer-node-session --save 5.实现小程序会话
#创建配置文件config.jsmodule.exports = { serverPort: '8765', // 小程序 appId 和 appSecret // 请到 https://mp.weixin.qq.com 获取 AppID 和 AppSecret appId: 'YORU_APP_ID', appSecret: 'YOUR_APP_SECRET', // mongodb 连接配置,生产环境请使用更复杂的用户名密码 mongoHost: '127.0.0.1', mongoPort: '27017', mongoUser: 'wxpro', mongoPass: 'wxpro****', mongoDb: 'wxpro'}; #编辑app.js,添加会话实现逻辑// 引用 express 来支持 HTTP Server 的实现const express = require('express');// 引用 wafer-session 支持小程序会话const waferSession = require('wafer-node-session'); // 使用 MongoDB 作为会话的存储const MongoStore = require('connect-mongo')(waferSession); // 引入配置文件const config = require('./config'); // 创建一个 express 实例const app = express();// 添加会话中间件,登录地址是 /loginapp.use(waferSession({ appId: config.appId, appSecret: config.appSecret, loginPath: '/login', store: new MongoStore({ url: `mongodb://${config.mongoUser}{config.mongoPass}@${config.mongoHost}{config.mongoPort}/${config.mongoDb}` })}));// 在路由 /me 下,输出会话里包含的用户信息app.use('/me', (request, response, next) => { response.json(request.session ? request.session.userInfo : { noBody: true }); if (request.session) { console.log(`Wafer session success with openId=${request.session.userInfo.openId}`); }});// 实现一个中间件,对于未处理的请求,都输出 "Response from express"app.use((request, response, next) => { response.write('Response from express'); response.end();});// 监听端口,等待连接app.listen(config.serverPort);// 输出服务器启动日志console.log(`Server listening at http://127.0.0.1:${config.serverPort}`); #重启服务 pm2 restart app
重启后,使用配套的小程序完成会话测试:打开配套小程序 - 点击 实验二:会话 - 获取会话,如果您能看到您的微信头像,那就表示会话已经成功获取了。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
|
|
|
|
|
|
|