摘要:安裝安裝及其客戶端命令行工具查看版本啟動(dòng)創(chuàng)建目錄,用于數(shù)據(jù)和日志存儲(chǔ)啟動(dòng)注首次啟動(dòng)可能會(huì)花費(fèi)大概時(shí)間可以使用下面的命令來(lái)檢查是否啟動(dòng)成功注默認(rèn)監(jiān)聽(tīng)端口添加用戶登錄本地服務(wù)創(chuàng)建用戶退出安裝模塊實(shí)現(xiàn)小程序的會(huì)話功能
1.安裝MongoDB
#安裝 MongoDB及其客戶端命令行工具 yum install mongodb-server mongodb -y #查看版本 mongod --version mongo --version2.啟動(dòng) MongoDB
#創(chuàng)建目錄,用于 MongoDB 數(shù)據(jù)和日志存儲(chǔ) mkdir -p /data/mongodb mkdir -p /data/logs/mongodb #啟動(dòng) MongoDB 注:首次啟動(dòng)可能會(huì)花費(fèi)大概 1min 時(shí)間 mongod --fork --dbpath /data/mongodb --logpath /data/logs/mongodb/wxpro.log #可以使用下面的命令來(lái)檢查是否啟動(dòng)成功 #注:MongoDB 默認(rèn)監(jiān)聽(tīng) 27017 端口 netstat -ltp | grep 270173.添加 MongoDB 用戶
#登錄本地 MongoDB 服務(wù) mongo #創(chuàng)建用戶wxpro use wxpro; db.createUser({ user: "wxpro", pwd: "wxpro****", roles: ["dbAdmin", "readWrite"]}); #退出 exit4.安裝 Node 模塊
實(shí)現(xiàn)小程序的會(huì)話功能,我們需要安裝 connect-mongo
和 wafer-node-session
cd /var/www/wxpro/ npm install connect-mongo wafer-node-session --save5.實(shí)現(xiàn)小程序會(huì)話
#創(chuàng)建配置文件config.js module.exports = { serverPort: "8765", // 小程序 appId 和 appSecret // 請(qǐng)到 https://mp.weixin.qq.com 獲取 AppID 和 AppSecret appId: "YORU_APP_ID", appSecret: "YOUR_APP_SECRET", // mongodb 連接配置,生產(chǎn)環(huán)境請(qǐng)使用更復(fù)雜的用戶名密碼 mongoHost: "127.0.0.1", mongoPort: "27017", mongoUser: "wxpro", mongoPass: "wxpro****", mongoDb: "wxpro" };
#編輯app.js,添加會(huì)話實(shí)現(xiàn)邏輯 // 引用 express 來(lái)支持 HTTP Server 的實(shí)現(xiàn) const express = require("express"); // 引用 wafer-session 支持小程序會(huì)話 const waferSession = require("wafer-node-session"); // 使用 MongoDB 作為會(huì)話的存儲(chǔ) const MongoStore = require("connect-mongo")(waferSession); // 引入配置文件 const config = require("./config"); // 創(chuàng)建一個(gè) express 實(shí)例 const app = express(); // 添加會(huì)話中間件,登錄地址是 /login app.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 下,輸出會(huì)話里包含的用戶信息 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}`); } }); // 實(shí)現(xiàn)一個(gè)中間件,對(duì)于未處理的請(qǐng)求,都輸出 "Response from express" app.use((request, response, next) => { response.write("Response from express"); response.end(); }); // 監(jiān)聽(tīng)端口,等待連接 app.listen(config.serverPort); // 輸出服務(wù)器啟動(dòng)日志 console.log(`Server listening at http://127.0.0.1:${config.serverPort}`);
#重啟服務(wù) pm2 restart app
重啟后,使用配套的小程序完成會(huì)話測(cè)試:打開配套小程序 - 點(diǎn)擊 實(shí)驗(yàn)二:會(huì)話 - 獲取會(huì)話,如果您能看到您的微信頭像,那就表示會(huì)話已經(jīng)成功獲取了。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/19052.html
摘要:是一個(gè)用于處理微信小程序的,實(shí)現(xiàn)思路參照了騰訊云官方微信小程序云端解決方案中的會(huì)話管理場(chǎng)景,即這個(gè)是其版本的一種實(shí)現(xiàn)。 WechatAppSessionBundle 是一個(gè)用于處理微信小程序的 Symfony Bundle,實(shí)現(xiàn)思路參照了騰訊云官方-微信小程序云端解決方案中的 會(huì)話管理場(chǎng)景,即這個(gè) Bundle 是其 PHP(Symfony) 版本的一種實(shí)現(xiàn)。(只是不知道國(guó)內(nèi)有多少使用...
摘要:小程序的布局信息微信小程序中使用作為長(zhǎng)度單位,可以根據(jù)屏幕寬度進(jìn)行自適應(yīng)。運(yùn)行環(huán)境普通都是執(zhí)行在瀏覽器的宿主環(huán)境,瀏覽器提供等對(duì)象但是小程序是運(yùn)行在微信上下文中的,沒(méi)有和。 小程序堅(jiān)持著 無(wú)需下載、觸手可及、用完即走的設(shè)計(jì)理念和價(jià)值觀,幫助用戶縮短完成任務(wù)的時(shí)間。下面從以下幾點(diǎn)進(jìn)行總結(jié)??偨Y(jié)是參考三清水老師的小冊(cè)子,推薦大家去購(gòu)買。寫的很棒。 1. 小程序能做什么,不能做什么? sho...
摘要:在微信小程序中,要更新視圖就只能修改,而視圖層也只能通過(guò)事件向邏輯層傳遞交互信息。頁(yè)面移植到微信小程序要修改的地方也還比較多,主要是標(biāo)簽和的交互及小程序提供的功能部分。 小程序是一種不需要下載安裝即可使用的應(yīng)用,它實(shí)現(xiàn)了應(yīng)用「觸手可及」的夢(mèng)想,用戶掃一掃或搜一下即可打開應(yīng)用。也體現(xiàn)了「用完即走」的理念,用戶不用關(guān)心是否安裝太多應(yīng)用的問(wèn)題。應(yīng)用將無(wú)處不在,隨時(shí)可用,但又無(wú)需安裝卸載。 —...
摘要:在開發(fā)之前你要有微信開發(fā)者工具。同時(shí)為了更適合開發(fā)微信小程序,還對(duì)進(jìn)行了擴(kuò)充以及修改,直接幫我們把適配的一部分工作都做了,比如他的,可以根據(jù)屏幕寬度進(jìn)行自適應(yīng),規(guī)定屏幕寬為。 本文由云+社區(qū)發(fā)表 這段時(shí)間有幸加入了一個(gè)關(guān)于微信小程序的項(xiàng)目開發(fā)組,從無(wú)到有的根據(jù)文檔自行學(xué)習(xí)了小程序的開發(fā)過(guò)程,前面已經(jīng)有幾位前輩的文章珠玉在前,我這里就先從前端界面的開發(fā)方面談一談小程序以及我所遇到的問(wèn)題吧...
摘要:框架提供了一套基礎(chǔ)的組件,這些組件自帶微信風(fēng)格的樣式以及特殊的邏輯,開發(fā)者可以通過(guò)組合基礎(chǔ)組件,創(chuàng)建出強(qiáng)大的微信小程序。 關(guān)于微信小程序 框架提供了自己的視圖層描述語(yǔ)言 WXML 和 WXSS,以及基于 JavaScript 的邏輯層框架,并在視圖層與邏輯層間提供了數(shù)據(jù)傳輸和事件系統(tǒng),讓開發(fā)者能夠?qū)W⒂跀?shù)據(jù)與邏輯??蚣艿暮诵氖且粋€(gè)響應(yīng)的數(shù)據(jù)綁定系統(tǒng)。整個(gè)小程序框架系統(tǒng)分為兩部分:視圖層...
閱讀 1430·2021-11-15 11:38
閱讀 3580·2021-11-09 09:47
閱讀 1979·2021-09-27 13:36
閱讀 3226·2021-09-22 15:17
閱讀 2563·2021-09-13 10:27
閱讀 2874·2019-08-30 15:44
閱讀 1189·2019-08-27 10:53
閱讀 2718·2019-08-26 14:00