成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

微信小程序server-2-實(shí)現(xiàn)會(huì)話層

Eminjannn / 1803人閱讀

摘要:安裝安裝及其客戶端命令行工具查看版本啟動(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 --version
2.啟動(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 27017
3.添加 MongoDB 用戶
#登錄本地 MongoDB 服務(wù)
mongo
#創(chuàng)建用戶wxpro
use wxpro;
db.createUser({ user: "wxpro", pwd: "wxpro****", roles: ["dbAdmin", "readWrite"]});
#退出
exit
4.安裝 Node 模塊

實(shí)現(xiàn)小程序的會(huì)話功能,我們需要安裝 connect-mongo
和 wafer-node-session

cd /var/www/wxpro/
npm install connect-mongo wafer-node-session --save
5.實(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

相關(guān)文章

  • 信小程序會(huì)話處理

    摘要:是一個(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)有多少使用...

    hoohack 評(píng)論0 收藏0
  • 理解小程序

    摘要:小程序的布局信息微信小程序中使用作為長(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...

    dmlllll 評(píng)論0 收藏0
  • 信小程序初探

    摘要:在微信小程序中,要更新視圖就只能修改,而視圖層也只能通過(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ú)需安裝卸載。 —...

    teren 評(píng)論0 收藏0
  • 從前端界面開發(fā)談信小程序體驗(yàn)

    摘要:在開發(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)題吧...

    hellowoody 評(píng)論0 收藏0
  • 一些知識(shí)點(diǎ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)分為兩部分:視圖層...

    leejan97 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<