99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

微信小程序+云開(kāi)發(fā):從0到100的讀書(shū)會(huì)實(shí)戰(zhàn)復(fù)盤(pán)

微信小程序+云開(kāi)發(fā):從0到100的讀書(shū)會(huì)實(shí)戰(zhàn)復(fù)盤(pán) 前陣子我把一個(gè)線下讀書(shū)會(huì)做成了微信小程序整個(gè)后端跑在微信云開(kāi)發(fā)上。標(biāo)題里的“從0到100”有兩層意思一是運(yùn)營(yíng)指標(biāo)是100位核心書(shū)友二是功能完整度從零到百分百的實(shí)現(xiàn)過(guò)程。今天把設(shè)計(jì)和實(shí)現(xiàn)過(guò)程完整復(fù)盤(pán)一遍從需求拆解、頁(yè)面實(shí)現(xiàn)、云函數(shù)設(shè)計(jì)到性能優(yōu)化和上線后踩過(guò)的坑盡量說(shuō)人話給同樣在做“微信小程序 云開(kāi)發(fā)”項(xiàng)目的同學(xué)一個(gè)可以直接抄的參考。這個(gè)讀書(shū)會(huì)小程序不是簡(jiǎn)單的信息展示頁(yè)它需要承載完整的讀書(shū)行動(dòng)閉環(huán)用戶進(jìn)來(lái)能看共讀計(jì)劃能每日打卡能寫(xiě)讀書(shū)筆記能報(bào)名線下活動(dòng)運(yùn)營(yíng)者能統(tǒng)計(jì)完讀率和活躍度。核心亮點(diǎn)是不需要自己買(mǎi)服務(wù)器不需要域名備案身份校驗(yàn)、數(shù)據(jù)庫(kù)、存儲(chǔ)、消息推送全都用微信云開(kāi)發(fā)搞定。對(duì)個(gè)人開(kāi)發(fā)者或者小型運(yùn)營(yíng)團(tuán)隊(duì)來(lái)說(shuō)學(xué)習(xí)成本和資金成本都能壓得很低。1. 項(xiàng)目定位與整體架構(gòu)設(shè)計(jì)1.1 讀書(shū)會(huì)場(chǎng)景下的核心需求拆解動(dòng)手寫(xiě)代碼之前我先列了一版需求清單按用戶角色分了三類(lèi)普通書(shū)友、組長(zhǎng)/運(yùn)營(yíng)者、管理員。普通書(shū)友最常用的功能是“今日打卡”和“讀書(shū)筆記”。這兩個(gè)動(dòng)作看似簡(jiǎn)單卻需要支撐兩個(gè)數(shù)據(jù)統(tǒng)計(jì)連續(xù)打卡天數(shù)、累計(jì)閱讀筆記數(shù)。排行榜、個(gè)人成長(zhǎng)曲線都由這兩類(lèi)數(shù)據(jù)聚合成。線下活動(dòng)報(bào)名雖然頻率不高但它的流程最長(zhǎng)涉及活動(dòng)列表、名額限制、訂閱消息提醒、簽到確認(rèn)最考驗(yàn)后端設(shè)計(jì)。組長(zhǎng)/運(yùn)營(yíng)者最需要的是看板數(shù)據(jù)今天有多少人打卡、這周哪本書(shū)完成率最高、哪幾位用戶連續(xù)打卡超過(guò)21天。小程序端不需要做得太重我直接用云開(kāi)發(fā)控制臺(tái)看原始集合同時(shí)做了一個(gè)簡(jiǎn)易的管理頁(yè)通過(guò)云函數(shù)讀取聚合結(jié)果。管理員則主要處理書(shū)單上下架、活動(dòng)創(chuàng)建、用戶禁用等低頻操作。這些需求合在一起決定了技術(shù)選型的方向前端用原生小程序后端不寫(xiě)自己的服務(wù)端完全依賴云開(kāi)發(fā)。為什么這么選往下說(shuō)。1.2 為什么是微信云開(kāi)發(fā)而不是自建后端我在這個(gè)項(xiàng)目之前做過(guò)傳統(tǒng)的小程序項(xiàng)目服務(wù)器用 Nginx Node.js數(shù)據(jù)庫(kù)用 MySQL登錄用 session 維護(hù)。那套方案不是不行但對(duì)一個(gè)小型讀書(shū)會(huì)來(lái)說(shuō)維護(hù)成本明顯過(guò)高。尤其是一個(gè)人要包攬前端、后端、運(yùn)維、運(yùn)營(yíng)能省一步是一步。微信云開(kāi)發(fā)最大的價(jià)值是把三件事直接抹平了云函數(shù)替代后端接口云數(shù)據(jù)庫(kù)替代 MySQL/MongoDB云存儲(chǔ)替代對(duì)象存儲(chǔ)。還有一個(gè)隱藏優(yōu)勢(shì)是免鑒權(quán)。在小程序端調(diào)用數(shù)據(jù)庫(kù)只要權(quán)限配置合法就能直接讀寫(xiě)不需要自己去寫(xiě)登錄 token。云函數(shù)里通過(guò)cloud.getWXContext()能拿到用戶的OPENID這就是天然的用戶標(biāo)識(shí)。我列過(guò)一個(gè)對(duì)比表看完更清楚對(duì)比項(xiàng)自建后端微信云開(kāi)發(fā)服務(wù)器費(fèi)用按月付費(fèi)至少幾十起按量付費(fèi)個(gè)人項(xiàng)目可免費(fèi)額度起步域名備案需要不需要登錄體系自己維護(hù) session/JWT自帶 openid 體系消息推送自己對(duì)接微信接口云函數(shù)直接調(diào)用 openapi運(yùn)維成本需要處理宕機(jī)、日志、備份控制臺(tái)可視化自動(dòng)擴(kuò)縮容適用項(xiàng)目規(guī)模大型、復(fù)雜業(yè)務(wù)中小型、微信生態(tài)內(nèi)業(yè)務(wù)如果你的用戶量預(yù)期達(dá)到數(shù)十萬(wàn)甚至更高自建后端確實(shí)可控性更強(qiáng)。但讀書(shū)會(huì)這種社群產(chǎn)品通常幾百到幾千活躍用戶云開(kāi)發(fā)的免費(fèi)額度和低價(jià)格完全扛得住。我做的時(shí)候選了云開(kāi)發(fā)還有一個(gè)原因是后期遷移方便云函數(shù)大多是無(wú)狀態(tài)的哪天業(yè)務(wù)真的變大了把函數(shù)邏輯搬到自己的 Node 服務(wù)上成本也可控。1.3 目錄結(jié)構(gòu)與數(shù)據(jù)模型設(shè)計(jì)項(xiàng)目結(jié)構(gòu)我保持了原生小程序的標(biāo)準(zhǔn)劃分。主包放核心頁(yè)面后期把長(zhǎng)尾頁(yè)面拆到了分包。miniprogram/ ├── pages/ │ ├── home/ │ ├── book-detail/ │ ├── checkin/ │ ├── note-editor/ │ ├── activity/ │ ├── mine/ ├── components/ │ ├── book-card/ │ ├── calendar-heatmap/ │ └── empty-state/ ├── utils/ │ ├── nav.js │ └── format.js └── app.js云開(kāi)發(fā)的環(huán)境下數(shù)據(jù)集合我設(shè)計(jì)了五張核心表users、books、checkins、notes、activities。這五張表已經(jīng)覆蓋了當(dāng)前所有功能盡量避免過(guò)度設(shè)計(jì)。users主要存用戶身份和積分{ _id: 用戶ID, openid: 云函數(shù)寫(xiě)入的openid, nickname: 昵稱, avatarUrl: 頭像, phone: 加密手機(jī)號(hào), points: 0, currentStreak: 0, maxStreak: 0, joinTime: 1670000000000 }checkins是數(shù)據(jù)量增長(zhǎng)最快的一張表每條記錄對(duì)應(yīng)一次每日打卡{ _id: 打卡記錄ID, userId: 用戶ID, bookId: 書(shū)籍ID, date: 2025-01-15, content: 今天讀到第3章..., images: [cloud://file1, cloud://file2], createdAt: 1670000000000 }books、notes、activities的結(jié)構(gòu)相對(duì)直觀不再展開(kāi)。重點(diǎn)是checkins表一定要注意“一天多次打卡”的防重問(wèn)題。我最初只靠業(yè)務(wù)層查詢判斷后期發(fā)現(xiàn)并發(fā)下會(huì)有雙寫(xiě)風(fēng)險(xiǎn)最終在云數(shù)據(jù)庫(kù)里給userId date加了唯一索引把問(wèn)題從底層徹底解決。數(shù)據(jù)模型這塊越早想到唯一約束后面越省事。2. 關(guān)鍵頁(yè)面的設(shè)計(jì)與實(shí)現(xiàn)2.1 首頁(yè)信息流和頂部導(dǎo)航欄高度適配首頁(yè)做的是自定義導(dǎo)航欄不是微信默認(rèn)的。原因很簡(jiǎn)單讀書(shū)會(huì)品牌感要強(qiáng)默認(rèn)導(dǎo)航欄字體顏色、背景色沒(méi)法樣樣兼顧而且后續(xù)要在右上角放一個(gè)“掃碼加入”入口必須用自定義導(dǎo)航欄。第一次寫(xiě)自定義導(dǎo)航欄時(shí)我也踩了“頂部導(dǎo)航欄高度”的坑。網(wǎng)上很多舊教程寫(xiě)固定高度44px在 iPhone 上還行換到挖孔屏 Android 上就整個(gè)錯(cuò)位。正確做法是用wx.getMenuButtonBoundingClientRect()獲取膠囊按鈕的位置再結(jié)合狀態(tài)欄高度算出導(dǎo)航欄高度。我在utils/nav.js里放了一個(gè)公共方法function getNavBarHeight() { const windowInfo wx.getWindowInfo() const menuButton wx.getMenuButtonBoundingClientRect() const statusBarHeight windowInfo.statusBarHeight || 20 const navBarHeight (menuButton.top - statusBarHeight) * 2 menuButton.height return { statusBarHeight, navBarHeight, navBarTotalHeight: statusBarHeight navBarHeight, menuButton } }這個(gè)公式的原理是膠囊按鈕的top減去狀態(tài)欄高度等于導(dǎo)航欄上下 padding 之和的一半乘以 2 再加上按鈕高度就是導(dǎo)航欄內(nèi)容區(qū)高度。適配完 iOS 和 Android 后首頁(yè)的輪播圖、共讀計(jì)劃展示區(qū)就不會(huì)出現(xiàn)按鈕遮擋內(nèi)容的問(wèn)題。首頁(yè)信息流我分成四塊頂部 banner 放當(dāng)月的共讀書(shū)籍中間是進(jìn)行中的共讀計(jì)劃卡片下方是“今日打卡”快捷入口底部是最近書(shū)友的讀書(shū)筆記流。小程序頁(yè)面的層級(jí)不宜太深用戶進(jìn)入首頁(yè)后所有核心動(dòng)作最好一鍵可達(dá)這也是我把“打卡”按鈕固定在首頁(yè)中上部的原因。2.2 讀書(shū)打卡與筆記編輯器打卡頁(yè)是每天被調(diào)用最多的頁(yè)面我把交互做得越簡(jiǎn)單越好。進(jìn)入頁(yè)面后默認(rèn)顯示當(dāng)前日期用戶只需要選擇正在讀的書(shū)填寫(xiě)至少 50 字的閱讀心得可選上傳圖片點(diǎn)“提交”就完成。圖片上傳我不能不提一個(gè)常見(jiàn)坑很多初學(xué)者直接把wx.chooseMedia返回的臨時(shí)路徑存到數(shù)據(jù)庫(kù)下次進(jìn)入頁(yè)面發(fā)現(xiàn)圖片加載不出來(lái)。臨時(shí)路徑是本次會(huì)話有效的必須在提交前先上傳到云存儲(chǔ)再把返回的fileID存入數(shù)據(jù)庫(kù)。上傳圖片時(shí)我會(huì)先做壓縮保證云存儲(chǔ)空間和上傳速度都合理。在chooseMedia里設(shè)置sizeType: [compressed]超過(guò) 1MB 的照片用wx.compressImage再壓一次。云存儲(chǔ)路徑按用戶和日期組織方便后續(xù)清理const cloudPath checkins/${openid}/${Date.now()}.jpg wx.cloud.uploadFile({ cloudPath, filePath: tempFilePath, success: (res) { // res.fileID 寫(xiě)入 checkins 記錄 } })打卡記錄寫(xiě)入我放在了云函數(shù)里而不是小程序端直接add。原因是需要在校驗(yàn)用戶身份后同時(shí)處理積分累加、連續(xù)天數(shù)計(jì)算、日歷數(shù)據(jù)更新多個(gè)集合一起寫(xiě)用云函數(shù)更安全。連續(xù)打卡天數(shù)計(jì)算是讀書(shū)會(huì)運(yùn)營(yíng)最看重的指標(biāo)。我在users表上直接存了currentStreak和maxStreak。每次打卡時(shí)查一下昨天的記錄如果昨天有打卡currentStreak 1如果昨天沒(méi)有currentStreak 1。這種方式讀起來(lái)簡(jiǎn)單但在跨天邊界可能有點(diǎn)偏差。想更穩(wěn)的話可以在云函數(shù)里查最近 7 天的打卡記錄再倒推連續(xù)天數(shù)。筆記編輯器我采用的是輕量方案輸入標(biāo)題、選擇關(guān)聯(lián)書(shū)籍、輸入正文正文支持純文本和簡(jiǎn)單換行。沒(méi)有引入富文本編輯器因?yàn)榫S護(hù)成本太高而且用戶寫(xiě)讀書(shū)筆記的場(chǎng)景和發(fā)長(zhǎng)文不一樣多是一兩百字的短評(píng)純文本已經(jīng)完全夠用。2.3 活動(dòng)報(bào)名與訂閱消息線下讀書(shū)會(huì)活動(dòng)的報(bào)名流程核心是“活動(dòng)卡片 - 活動(dòng)詳情 - 報(bào)名成功 - 收到提醒”。我在活動(dòng)集合里維護(hù)一個(gè)participants數(shù)組報(bào)名前先做人數(shù)校驗(yàn)const activity await activities.doc(id).get() if (activity.data.participants.length activity.data.maxPeople) { return { code: -1, msg: 名額已滿 } }報(bào)名成功后最怕用戶忘記參加。小程序提供訂閱消息但觸發(fā)時(shí)機(jī)很講究。很多新手一進(jìn)頁(yè)面就彈訂閱消息授權(quán)結(jié)果用戶無(wú)腦點(diǎn)了拒絕后面再也拉不回來(lái)。我的做法是等用戶真正點(diǎn)擊“報(bào)名”按鈕時(shí)再調(diào)用wx.requestSubscribeMessage申請(qǐng)活動(dòng)開(kāi)始提醒。這個(gè)時(shí)機(jī)用戶有明確意圖授權(quán)率會(huì)高很多。訂閱消息需要通過(guò)云函數(shù)發(fā)送const result await cloud.openapi.subscribeMessage.send({ touser: openid, templateId: 模板ID, page: pages/activity/detail?idxxx, data: { thing1: { value: activity.title }, date2: { value: activity.startTime } }, miniprogramState: formal })這里常見(jiàn)的報(bào)錯(cuò)是43101原因往往是用戶未授權(quán)或者訂閱憑證已過(guò)期。一次性訂閱模板只能發(fā)一條消息發(fā)完就失效用戶需要再次點(diǎn)擊授權(quán)。所以產(chǎn)品設(shè)計(jì)上要避免頻繁打擾用戶最好只在重要節(jié)點(diǎn)申請(qǐng)訂閱。2.4 個(gè)人中心與手機(jī)號(hào)快捷登錄個(gè)人中心這個(gè)頁(yè)面功能密度很高頭像昵稱、連續(xù)打卡天數(shù)、累計(jì)筆記數(shù)、我的活動(dòng)、積分記錄。登錄流程采用微信小程序標(biāo)準(zhǔn)做法先通過(guò)wx.login獲取臨時(shí) code然后讓云函數(shù)換取 openid并自動(dòng)創(chuàng)建用戶記錄。手機(jī)號(hào)登錄不是注冊(cè)的必選項(xiàng)而是作為“綁定手機(jī)號(hào)”的入口。用微信官方手機(jī)號(hào)快速驗(yàn)證組件按鈕設(shè)置open-typegetPhoneNumberbutton open-typegetPhoneNumber bindgetphonenumberonGetPhoneNumber 綁定手機(jī)號(hào) /button拿到code后在云函數(shù)里通過(guò)phonenumber.getPhoneNumber換取真實(shí)手機(jī)號(hào)const res await cloud.openapi.phonenumber.getPhoneNumber({ code: event.code })這里要提醒一句手機(jī)號(hào)屬于敏感個(gè)人信息數(shù)據(jù)庫(kù)里盡量不要存明文。我的做法是云函數(shù)返回后只把手機(jī)號(hào)的脫敏形式存到users.phone比如138****1234真正需要回訪用戶時(shí)再做加密查詢。這個(gè)項(xiàng)目本身不涉及支付和復(fù)雜交易脫敏已經(jīng)足夠。3. 云開(kāi)發(fā)后端云函數(shù)、數(shù)據(jù)庫(kù)與存儲(chǔ)的實(shí)戰(zhàn)組合3.1 云函數(shù)的權(quán)限校驗(yàn)與數(shù)據(jù)寫(xiě)入云函數(shù)是云開(kāi)發(fā)后端的核心。讀書(shū)會(huì)大部分?jǐn)?shù)據(jù)寫(xiě)入操作都通過(guò)云函數(shù)完成而不是讓前端直接操作數(shù)據(jù)庫(kù)。好處是邏輯集中在服務(wù)端前端沒(méi)法偽造參數(shù)比如用戶不能手動(dòng)把積分改成 999。以一個(gè)最簡(jiǎn)單的login云函數(shù)為例const cloud require(wx-server-sdk) cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) exports.main async (event, context) { const { OPENID } cloud.getWXContext() const db cloud.database() const userRes await db.collection(users).where({ openid: OPENID }).get() if (userRes.data.length 0) { await db.collection(users).add({ data: { openid: OPENID, nickname: , avatarUrl: , points: 0, currentStreak: 0, maxStreak: 0, createdAt: db.serverDate() } }) } return { openid: OPENID, isNewUser: userRes.data.length 0 } }在云函數(shù)里通過(guò)cloud.getWXContext()拿到的OPENID是可信的不能被用戶偽造。所以后續(xù)寫(xiě)checkins、notes時(shí)我都以云函數(shù)上下文里的OPENID為準(zhǔn)而不是前端傳過(guò)來(lái)的參數(shù)。如果前端自己傳了一個(gè)userId就有可能發(fā)生越權(quán)操作。3.2 數(shù)據(jù)庫(kù)查詢優(yōu)化索引、分頁(yè)與聚合統(tǒng)計(jì)云開(kāi)發(fā)數(shù)據(jù)庫(kù)默認(rèn)單次返回 20 條數(shù)據(jù)這在列表頁(yè)顯然不夠用。首頁(yè)筆記流我用的是skip limit分頁(yè)但瘋狂往下滑時(shí)skip越到后面越慢。更好的做法是使用_id作為游標(biāo)每次拿上次最后一條記錄的_id用_id 上次值的方式向下翻頁(yè)。云開(kāi)發(fā)控制臺(tái)里可以給集合配置索引。我至少給三個(gè)高頻查詢建了索引checkins表的userId date唯一索引防止重復(fù)打卡。notes表的bookId createdAt復(fù)合索引加快書(shū)籍詳情頁(yè)的筆記列表。checkins表的date userId索引用來(lái)做每日打卡統(tǒng)計(jì)。統(tǒng)計(jì)連續(xù)打卡和排行榜時(shí)我用聚合操作。比如計(jì)算每本書(shū)的筆記數(shù)const $ db.command.aggregate const res await db.collection(notes) .aggregate() .group({ _id: $bookId, count: $.sum(1) }) .sort({ count: -1 }) .limit(10) .end()聚合返回結(jié)果最多 20 條如果書(shū)很多需要分批處理或者用云函數(shù)循環(huán)聚合后緩存到一張統(tǒng)計(jì)表里。這種方案在用戶量到 100 的時(shí)候完全夠用不用一開(kāi)始就把系統(tǒng)設(shè)計(jì)復(fù)雜。3.3 云存儲(chǔ)管理圖片與封面圖云存儲(chǔ)主要存兩類(lèi)圖片用戶的打卡照片、書(shū)籍和活動(dòng)的封面圖。書(shū)籍封面上傳后我會(huì)記錄一個(gè)fileID到books集合小程序端image組件可以直接使用這個(gè)fileID。需要注意的是云存儲(chǔ)也有容量限制和讀次數(shù)計(jì)費(fèi)所以上傳前一定要壓縮。封面圖建議用固定的寬度和壓縮質(zhì)量避免用戶傳一張 5MB 的原圖一張封面就把免費(fèi)容量撐爆。我踩過(guò)一次坑更新書(shū)籍封面時(shí)生成了新fileID舊文件沒(méi)有刪除導(dǎo)致云存儲(chǔ)里堆了幾十個(gè)無(wú)用文件。后來(lái)我在云函數(shù)上傳新封面后主動(dòng)調(diào)用deleteFile刪除舊fileIDawait cloud.deleteFile({ fileList: [oldFileID] })上傳入口做一個(gè)文件大小提示超過(guò) 2MB 直接攔截對(duì)存儲(chǔ)成本和加載速度都有幫助。4. 從 0 到 100 用戶過(guò)程中的性能、安全與體驗(yàn)優(yōu)化4.1 首屏速度與分包加載小程序主包有 2MB 的大小限制這個(gè)限制是很多新手的噩夢(mèng)。如果是純個(gè)人項(xiàng)目很容易把頁(yè)面、圖片、組件全塞到主包里輕則告警重則無(wú)法上傳。我從一開(kāi)始就把所有代碼分包處理。app.json里的分包配置大概長(zhǎng)這樣{ pages: [ pages/home/home, pages/book-detail/book-detail, pages/mine/mine ], subpackages: [ { root: packageCommunity, pages: [ pages/activity/activity, pages/activity-detail/activity-detail ] }, { root: packageNote, pages: [ pages/note-editor/note-editor, pages/note-detail/note-detail ] } ] }首頁(yè)只放必須的頁(yè)面活動(dòng)詳情、筆記編輯器這種低頻頁(yè)面都丟到分包里。靜態(tài)圖片也盡量用云存儲(chǔ)的fileID懶加載而不是打包進(jìn)代碼。首頁(yè)首屏我還加了一個(gè)很輕的骨架屏組件數(shù)據(jù)加載完成前先展示灰色占位塊。這個(gè)細(xì)節(jié)對(duì)觀感提升很明顯尤其是第一次打開(kāi)小程序的用戶不會(huì)看到長(zhǎng)時(shí)間白屏就直接關(guān)掉。4.2 小程序抓包調(diào)試與接口排查開(kāi)發(fā)階段排查問(wèn)題時(shí)抓包是很有用的手段。小程序前端發(fā)出的請(qǐng)求如果走了wx.request我習(xí)慣用 Charles 或者 Proxypin 這類(lèi)工具看請(qǐng)求路徑、參數(shù)和返回結(jié)果。基本流程不復(fù)雜手機(jī)和電腦連同一個(gè)局域網(wǎng)電腦端配置代理手機(jī)端安裝并信任抓包工具的 HTTPS 證書(shū)后小程序里的請(qǐng)求就能在工具里看到。抓包時(shí)能看到請(qǐng)求頭、響應(yīng)體還有請(qǐng)求耗時(shí)能很快定位是前端參數(shù)傳錯(cuò)還是后端接口返回異常。這里要特別說(shuō)明抓包工具是給開(kāi)發(fā)者聯(lián)調(diào)用的不要在未經(jīng)授權(quán)的情況下去抓別人的小程序流量。同時(shí)云函數(shù)內(nèi)部調(diào)用并不走HTTP代理所以云函數(shù)里的問(wèn)題最直接的排查路徑是去云開(kāi)發(fā)控制臺(tái)“云函數(shù)日志”里看打印信息。我在每個(gè)云函數(shù)里都加了console.log上線后兩周就養(yǎng)成了“出問(wèn)題先看日志再看抓包”的習(xí)慣。4.3 常見(jiàn)問(wèn)題與排查技巧實(shí)錄我把讀書(shū)會(huì)小程序上線后遇到的高頻問(wèn)題整理成一個(gè)表每個(gè)問(wèn)題都包含大家最關(guān)心的現(xiàn)象和解決辦法問(wèn)題常見(jiàn)原因解決辦法云函數(shù)調(diào)用返回 -501000索引未創(chuàng)建或權(quán)限不足在云開(kāi)發(fā)控制臺(tái)檢查集合權(quán)限添加必要索引打卡成功但積分沒(méi)增加云函數(shù)更新和新增事務(wù)不一致把積分累加放在打卡云函數(shù)內(nèi)部用_.inc(10)原子更新訂閱消息發(fā)送失敗 43101用戶取消了授權(quán)或模板一次性已用完在報(bào)名等關(guān)鍵動(dòng)作時(shí)請(qǐng)求授權(quán)為每個(gè)用戶記錄訂閱狀態(tài)首頁(yè)筆記流滑到后面重復(fù)skip分頁(yè)在新增數(shù)據(jù)時(shí)產(chǎn)生了偏移改為基于_id游標(biāo)分頁(yè)自定義導(dǎo)航欄錯(cuò)位直接寫(xiě)死 44px用wx.getMenuButtonBoundingClientRect()動(dòng)態(tài)計(jì)算高度圖片上傳慢原圖太大壓縮后再上傳限制 2MB 以內(nèi)手機(jī)號(hào)解不出來(lái)誤用了舊的getPhoneNumber參數(shù)確保云函數(shù)調(diào)用phonenumber.getPhoneNumber傳入的是最新code這張表幫我在社區(qū)里被問(wèn)到時(shí)少打了很多字也讓項(xiàng)目維護(hù)更順暢。很多問(wèn)題其實(shí)不是復(fù)雜 bug而是對(duì)微信平臺(tái)規(guī)則不熟悉多踩幾次坑就自然記住了。5. 上線與運(yùn)營(yíng)階段的避坑記錄與擴(kuò)展建議5.1 類(lèi)目選擇與審核讀書(shū)會(huì)小程序在申請(qǐng)類(lèi)目時(shí)我遇到了一個(gè)很現(xiàn)實(shí)的問(wèn)題讀書(shū)會(huì)本身沒(méi)有一個(gè)統(tǒng)一的類(lèi)目它既涉及內(nèi)容展示又涉及 UGC 筆記還可能有線下活動(dòng)報(bào)名。申請(qǐng)時(shí)可以選擇“教育”類(lèi)目但部分教育類(lèi)目需要資質(zhì)證明個(gè)人開(kāi)發(fā)者不一定能提供。我的處理方法是先提交核心功能最匹配的“工具-效率”類(lèi)目順利過(guò)審后再把 UGC 和活動(dòng)報(bào)名功能逐步迭代上去。上線后如果涉及線下活動(dòng)收費(fèi)再按平臺(tái)要求補(bǔ)充對(duì)應(yīng)資質(zhì)或切換到“社交”類(lèi)目。審核階段最容易被打回的點(diǎn)是分享功能不規(guī)范、訂閱消息使用場(chǎng)景不符、用戶協(xié)議缺失。小程序里涉及用戶創(chuàng)建內(nèi)容哪怕只是一個(gè)讀書(shū)筆記編輯器也要準(zhǔn)備《用戶協(xié)議》和《隱私保護(hù)指引》并在用戶首次使用時(shí)彈窗告知。這個(gè)不復(fù)雜但是不能漏。5.2 冷啟動(dòng)和增長(zhǎng)從 0 到 100產(chǎn)品做出來(lái)只是第一步把用戶拉到 100 才是我定義的“完成”。讀書(shū)會(huì)的冷啟動(dòng)不能靠小程序本身還要靠社群和線下活動(dòng)。我用小程序做了一個(gè)很輕的分享閉環(huán)生成帶有專屬參數(shù)的海報(bào)書(shū)友分享到微信群新用戶掃碼進(jìn)入小程序并自動(dòng)關(guān)聯(lián)到推薦人。生成小程序碼和海報(bào)我直接用云函數(shù)里的wxacode.getUnlimitedconst res await cloud.openapi.wxacode.getUnlimited({ scene: inviteropenid123, page: pages/home/home, checkPath: false, envVersion: release }) const upload await cloud.uploadFile({ cloudPath: poster-code/ Date.now() .png, fileContent: res.buffer })拿到小程序碼后再用自定義 canvas 把書(shū)籍封面、活動(dòng)時(shí)間和碼合成一張海報(bào)。這個(gè)功能對(duì)運(yùn)行者的運(yùn)營(yíng)價(jià)值很明顯書(shū)友分享的每一張海報(bào)都成了一個(gè)精準(zhǔn)的獲客入口。用戶增長(zhǎng)之后我還在小程序里做了一個(gè)簡(jiǎn)單的“連續(xù)打卡排行榜”每周把前 10 名在群里公示。不是為了讓用戶卷而是用社交機(jī)制維持共讀氛圍。從 0 到 100 用戶的過(guò)程技術(shù)上的壓力很小真正的難點(diǎn)是運(yùn)營(yíng)節(jié)奏和內(nèi)容選題能不能跟上。5.3 后續(xù)功能擴(kuò)展這個(gè)項(xiàng)目做到穩(wěn)定運(yùn)行后我自己列了一張擴(kuò)展清單優(yōu)先級(jí)從高到低排下來(lái)第一優(yōu)先級(jí)是微信支付。當(dāng)讀書(shū)會(huì)開(kāi)始辦付費(fèi)訓(xùn)練營(yíng)、賣(mài)實(shí)體書(shū)盲盒時(shí)支付能力就繞不開(kāi)。云開(kāi)發(fā)里接入微信支付需要商戶號(hào)如果還沒(méi)注冊(cè)可以先把“積分兌換”和“免費(fèi)活動(dòng)”跑穩(wěn)再考慮支付。第二優(yōu)先級(jí)是實(shí)時(shí)互動(dòng)。小程序里做一個(gè)書(shū)友實(shí)時(shí)聊天室用云開(kāi)發(fā)數(shù)據(jù)庫(kù)的實(shí)時(shí)數(shù)據(jù)推送就能實(shí)現(xiàn)適合共讀期間圍繞某一本書(shū)展開(kāi)討論。不過(guò)這功能對(duì)前端復(fù)雜度提升明顯建議等用戶真正常駐后再說(shuō)。第三優(yōu)先級(jí)是 AI 書(shū)摘。我試過(guò)把筆記聚合后調(diào)用大模型接口生成每周書(shū)摘這個(gè)功能一旦做好用戶的打開(kāi)率會(huì)明顯增加。但云函數(shù)調(diào)用外部接口要注意超時(shí)時(shí)間可以把長(zhǎng)任務(wù)拆成隊(duì)列處理或者用定時(shí)觸發(fā)器批量跑。最后分享一個(gè)我自己的習(xí)慣每周抽十分鐘翻一遍云開(kāi)發(fā)控制臺(tái)的“數(shù)據(jù)庫(kù)請(qǐng)求次數(shù)”和“云函數(shù)調(diào)用次數(shù)”很多性能問(wèn)題會(huì)在數(shù)字異常時(shí)提前暴露。讀書(shū)會(huì)小程序的核心不是技術(shù)多炫而是讓用戶真的愿意每天打開(kāi)讀幾頁(yè)。工具能做到不煩人、不給用戶添亂就已經(jīng)成功了一大半。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
综合婷婷都市激情| 婷婷欧美综合| 亚洲成人综合在线| 思思久久99热只有频精品66| 精品视频99看在线视频| 色播五月丁香| 天堂久久精品| 激情五月色婷婷| 苗黎美女四级成人版一级二级毛片| 97干视频在线| 欧洲亚洲精品| 婷婷精品性性性性性性性| 开心六月婷| #NAME?| 精品人妻久久久久久| 亚洲天天综合| 久久这里只| 99这里只有免费的精品| 五月天婷婷激情网| 97操操操| 色五月综合网| 色五月综合网| 六月婷婷激情| 久久婷婷五月综合| 亚洲人妻av| 2015WWW永久免费观看播放| 天天射影院| 五月天婷婷基地综合网| 99熟女啪啪视频| 婷婷色情五月| 色播五月| 九九视屏| 亚洲AV人人操| 色综合久久天天综合网| 天天干天天干天天干| 久久A区B区| 激情五月婷婷色综合| 99热这里只有99| 成人在线精品| 激情五月婷婷丁香六月| 激情五月激情综合俺也去婷婷小说| 538在线精品| 五月婷婷六月丁| 中文字幕在线日亚洲9| WWW免费视频碰碰碰碰| 丁香婷婷浪潮AV久久综合| 99热热热99精品丁香| 人妻中文在线| 色狠狠色噜噜AV天堂五区| 日本片日本片祼观看网站在线看中文版网页在线看| 9l视频自拍9l九色成人| 最新高清无码专区| 五月精品99综合| 日本操B视频| 九九色热| 级人人91| 99色在线观看视频| 久久三级视频| 丁香五月骚喷水视频| 色综合爱综合| 色综合色色色| 五月婷婷丁香| 被强行糟蹋的女人A片| 日本少妇裸体做爰高潮片 | 欧美婷婷五月天综合| 久操操| 亚洲色五月| 超碰在线成人| 91dy.av| 成人婷婷五月| 久久9热| 九九热99在线视频| 五月天啪啪视频| 婷婷五月天国产精品| 欧美婷婷六月丁香综合色| 久久久人妻不卡| 亚洲成色综合网站免费观看| 99精色| 久久99网| 91日本在线观看| 中文字幕欧美日韩VA免费视频| 成人美女网| 亚洲AV在线免费看| 日本在线99| 五月丁香综合激情| 久久成人天| 啪到高潮激情丁香五月| 亚洲午夜av| 五月婷婷六月天| 91夫妻视频| 五月丁香狠狠爱婷婷综合| 精品九九网| 日韩啪| 夜夜爽天天| 丁香激情婷婷网| 五月天六月色| 欧美性猛交99久久久久99按摩| 99综合99| 天天爱天天做天天舔| 激情五月婷婷色| 丁香五月香蕉| 99亚洲视频| 久大香蕉| 丁香五月激情图片婷婷| 五月激情丁香五月| 九九成人| 日本综合99| 狼人婷婷久久| 99在线精品在线视频| 婷婷综合激情五月中文字幕| 91视频五月丁香| 国产精品国产成人国产三级| 99热大香蕉| 亚洲另类婷婷五月综合| 色99在线视频| 五月婷婷人人人操| 九九热在线99| 久久丁香综合香蕉| 丁香五月视频在线观看| 激情五月天色色| 五月婷婷久久大片| 另类综合激情| 婷婷网五月天| 成人在线精品| 久久与婷婷| 欧美日韩成卜| 丁香五月第九色| 五月婷婷深深爱| 中国丰满熟女A片免费观| 92国产福利| 97色伦另类图片小说视频 | 五月婷婷丁香深深爱| 天天爽天天干天天| 九九色婷| 久热这里只有精品视频6| 久热91精品| 国av网| 美女五月天婷婷| 99热综合在线| 国产精品美女| 中文av网| 国产AV不卡福利| 丁香五月婷婷色播艳门照| 丁香五月天电影| 婷婷五月色色| 久久天堂网| 久草五月丁香婷婷综合| 婷婷综合爱| 亚洲精品又粗又大又爽A片 | 婷婷另类开心| 亚洲日韩乱码一区二区三区四区 | 玖玖热99| 综合一本道| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 99re这里只有精品在线观看| 九九色网专区| 99色在线观看视频| 久re在线| 色五月av| 黄网网站在线播放| 亚洲激情五月天| 国产精品日日躁夜夜躁| 婷婷五月天久久久| 成人天天爽| 日本色色色| 97性视频| 久久狠狠干| 99视频在线观看网址| 色婷婷AV久久| 一本色道久久综合狠狠躁小说| 亚洲区1| 青青草视频福利| 五月婷婷爽爽爽| AV美美午夜| 国产欧美精品AAAAAA片| 色播五月丁香| 插逼综合网| 丁香婷婷五月色成人网站| 色婷婷丁香九月| 五月天天天天天天天天天天天婷婷婷| 欧美色久| 五月婷婷久久综合| 天天操夜夜肏| 高清国产AV| 久热免费| 99久久精| 婷婷碰碰| 久久丁香五月| 亚洲性爱99| 亚洲精品又粗又大又爽A片 | 欧美丰满熟妇BBB久久久| 婷婷的五月天另类视频| 丁香五月婷婷激情蜜桃| 棕合影院色色| 噜噜噜噜噜日本视频| 精品国产AV色一区二区深夜久久| 九九综合久久| 51成人| 精品色色| 五月天婷婷婷| 国产乱码久久| 激情五月天。| 久久伊人婷婷| 色婷婷a三区麻| 色色色五月| 亚洲欧洲午夜成人精品av| 五月丁香婷婷综合网| 91精品久久久久久综合五月天| 五月丁香六月婷婷综合网| 色婷婷激情视频| 色色色色色网| 欧美色色色色色色色色色色影视| 99精品网址| 亚州操操| 99热的无码| 超碰色综合| a九九热www| 色偷偷综合| 丁香五月冃欧美| 国产中文字幕在线视频免费观看 | 九九99在线| 婷婷色网| 色色色综合色| 天天射综合网天天插| 免费AV在线网址| 激情五月天影院| 99久久免费精品| 超级碰碰碰97免费| 五月天婷婷偷拍| 综合色色婷婷| 美女五月天| 五月丁香婷成人网| 久久婷婷国产| 男人的天堂av俄罗斯热| 图片区 小说区 区 亚洲五月| 久久久久人妻精选| 国产Va视频| 国产免费av在线| 中文人妻AV久久人妻18| 久久综合五月天| 五月婷婷免费| 人妻自慰在线| 五月天久久www| 五月激情综合网| 99re思思久久| 日撸夜撸日操| 六月丁香婷婷天堂| 九九这里只有精品在线视频| 全高清无码视頻| 亚洲午夜成人av电影网| AA片在线观看视频在线播放| 九九热最新视频| 欧美黄色AA片哗啦啦啦| 五月婷婷综合潮喷| 26uuu激情五月天| 五月婷婷啪啪啪| 大香蕉在线99热| 99热最新网址| 五月丁香香蕉| 丁香六月婷婷| 婷婷五月丁香久久| 五月丁香六月色| 久久精品视频9| 青青热久久综合| 天天射美女| 99精品福利视频| 天天激情夜夜干| 色婷婷97| 久久激情综合| 99激情在线| 91窝窝| 97人妻超级碰碰碰碰碰| 日韩在线看AV| 婷婷五月丁香性爱| 亚洲影院婷婷色| 99燥99日| 五月婷婷激情啪啪| 亚洲无码猫咪| 狠狠久久婷| 丁香五月大香蕉在线99| 超碰免费观看| 东北熟女视频99| 婷婷香蕉精品| 九热网站| 激情久久综合网| 97日本在线播放| 青草视频在线播放| 欧美日韩色色| 亚洲 欧洲 国产 伦综合| www.wuyuetian啪啪| 国产精品久久久久久久久久| 影音先锋日本三级资源| 五月婷婷综合在线视频| 综久久久| 综合久久高清| 丁香六月激| 五月婷婷黄色| 狠狠干在线视频| 激情五月丁香在线观看直播| 无码色色| 婷婷五月综激情| 亚洲黄色精品| 大香蕉久| 九九九九九九热| 超碰人人在线观看| 丁香六月| 99色综合网| 五月婷婷伦理| 综合五月天婷婷色| 天天肏在线观看| 日本三级黄色大片| 国产精产国品一二三在观看| 激情五月天情色| 五月丁香视频色色| 色色日韩网| WWW.五月天9999| 99精彩视频在线观看| 色婷婷五月亚洲| 激情VA视频| 成人短视频在线免费观看| 综激情网| 最近中文字幕2019视频1| 成人网在线观看视频| 色五月色五天色情网址| 五月丁香啪啪网| 99久久这里只有精品免费官网| 五月综合婷婷网| www.ppypp| 182TV大香蕉| 精品人妻一区二区| 日韩有码一区| 久久久精品视频79| 婷婷五月深深爱| 久久久噜噜噜久久人妻| 99热这里只有精| 婷婷丁香91综合| 久久久A级视频| 91丨九色丨东北熟女| 天天操天天操| 超碰com| 天天做天天爱| 99久热精品在线| site:901-07.com| 九九精品视频在线6| 婷婷五月综合久久中文字幕| 91se视频| 色婷婷五月开心六月综合| 五月天激情婷婷丁香| 婷婷激情在线| 影音先锋男人av资源站| 狠狠色噜噜狠狠色噜噜噜999| 丁香色五月婷婷91桃色| 99热这里| 啪啪黄页网| 6月丁香婷婷激情| www热久久yy9| 丁香五月婷婷国产在线| 色婷婷丁香五月天在线视频| 色五月综合在线| 婷婷丁香九色| 丁香五月亭亭六月综合激情网| 五月丁香婷婷六月| 久久久久久久11111111111| 国产精品成人AV在线| 99热99热| 亚洲V国产V欧美V久久久久久| 狠狠爱婷婷丁香| 操逼123网| av狠狠操| 日韩另类在线观看| 26uuu精品国产| 丁香五月天堂网| 大胆伊人久久| 综合色综合| 五月丁香六月在线| 91超碰在线播放| 五月天婷婷中文字幕在线播放| 狠狠综合| 人人操97| 丁香五月综合婷婷| 超碰色婷婷| 天堂草在线看www| 久久婷婷五月天| 激情九月婷婷| 五月丁香婷婷色色| 99在线视频播放| 思思 热 99| 国产精产国品一二三在观看| 六月婷伊人| 九九热欧美| 成人在线日韩欧美| 草综合14| 中文字幕+中文在线| 韩国久久少妇视屏| 激情九月丁香婷婷| 日日撸日日操| 五月天婷婷婷| 思思99热这里只有精品6| www.色五月| 激情av| 亚洲旡码| 久碰久操| 久久人人妻| 丁香五月久久| 天天综合色| 中文网AV| 欧美人与性动交CCOO| 777久久综合视频| 91狠狠色丁香婷婷综合久久精品| 亚州精品色情在线观看| 国产精品涩涩涩视频网站| 五月综合激情久久| 成人国产欧美大片一区| 天天夜夜六月丁香五月婷婷老师| 九九爱激情| 五月婷婷综合色啪首页| 精品五月花| 欧美美美女性色视频| 欧美日本国产| 丁香五月天综合| 我去色色网五雨天| 99精品国产热久久91色欲| 丁香五月影视| 久久久婷婷婷| 色综合网综合| 超碰人人操人人9| 天天干天天日天天操| 99偷拍视频在线日本| 亚洲免费观看高清完整版AV线| 天天日夜夜曹| 久综合网| 天天射天天插天天干| site:ornaments52.com| 第1影院之五月婷婷| 五月婷婷日| 大香线蕉伊人| 成人精品在线观看| 99精色| 大香蕉狠狠爱主页| 色婷婷五月天偷拍| 五月婷婷狠狠干| 奇米网大香蕉| 亚洲综合五月天婷婷丁香| 婷婷久久国产视频| 91刘玥视频在线观看| 色综合伊人网| 99热这里只有精品亚洲| 一级性感毛片| 天天操天天曰| 五月婷婷六月开心| 97天堂| 亚洲日韩乱码一区二区三区四区| 激情伊人五月天| 精品久久9| 丁香五月成人| 日日噜噜夜夜狠狠久久丁香六月| 五月天激情小说婷婷| 婷色天堂| 婷婷精品免费久久| 天天综合网亚洲网站| 久久电影4399| 婷婷五月丁香综合网| 超碰国产在线观看| 伊人干练久| 婷婷丁香五月激情密臀av| 日本丁香五月| 色婷婷电影网| 另类小说五月天综合网| 久月婷婷| 91综合在线观看| 夜夜撸日日操| 超碰99资源站| 色五月综合婷婷| 97碰超级人人看| 夜夜操加勒比| 色综合色色色| www.天天干| 97caop| 九九热免费视频| 色插综合网| 99热在线资源| 色色色色色色色五月| 玖玖在线视频| 99久视频| 国模淫穴色图| 三区激情四射av| 丁香五月开心亚洲| 丁香色色五月| 久久在线视频免费观看| 天天婷婷综合亚洲亚洲| 五月丁香六月| 五月天久久综合婷婷丁香| aaa丁香五月天| 婷婷九月丁香天堂丁香天堂| 99se丁香| 国外亚洲成AV人片在线观看| 亚洲免费婷婷| 久久久香| 婷婷狠狠操| 伊人婷婷五月天av| 激情网站综合五月天| 狠狠色噜噜狠狠| 激婷网| 久久丁香五月婷婷| 97色在线视频| 青青草原伊人网| 天天日日夜夜爽。| 五月激情综合深爱| 久久这里只有精品无码| 色宗合,宗合网| 国产激情AV| 97碰碰视频| 日韩欧美婷婷丁| 丁香五月婷婷激情四射深爱激情| 国产精品99久久久久久久女警| 激情五月六月婷婷| 超碰成人免费| 午夜天堂啪啪| 日韩成人综合网| 婷丁香五月天| 大香蕉婷婷久久| 99热手机在线精品| 丁香五月综合| 色情五月婷| 婷婷综合视频| 狠狠色丁香久久婷婷综合五月| 亚洲无码猫咪| 综合99在线| 色情婷婷久久五月天| 五月天婷婷婷| 色五月美女| 碰超亚洲| 亚洲四色五月| 美女黄频aⅴ视频| 五月婷婷激情久久| 91九色精品熟女内射| 中文字幕在线日亚洲9| 五月婷婷三级| 日韩色色小视频| WWW.天天日| 丁香六月开心| 天天日日天天| 色综合久久久久久久久五月| 久久久久久人妻久久久久久久久久人妻久久久| www激情婷婷com| 天天日天天摸| 大香蕉久久久久| 色狠狠色| 国产成人精品一区二三区熟女在线| 99热这里有精品| 伊人高清无码| 国产亚洲色婷婷久久99精品9j| 亚洲精品中文字幕成人片| 538任你爽视频不一样的| 91丨九色丨熟女| 色色五月天激情| 五月丁香久久网| 色天天狠狠干| 五月婷六月| 六月久久婷婷| www.zbzhongsen.com| 怡红院AV亚洲一区二区三区H| wwwav大香蕉| 97人人操人人操人人操人人| 色欲丁香| 亚洲五月天狠狠| 综合一本道| 99热精品在线| 色色色色网站| 在线视频九色97| 伊人丁香花综合影院| 国产操逼视频网站| 亚洲在线操| 人人色人人摸人人看| 亚洲日韩乱码一区二区三区四区| 九九精品视频在线观看| 丁香五月欧美成人| 亚洲中字AV电影在线网站| 九九免费视频| 色10月婷婷视频| 亚洲欧洲中文日韩久久AV乱码| 五月婷精品| 爆乳熟妇一区二区三区爆乳照片| 五月天激情国产综合婷婷婷| 五月丁香六月激情综合欧美| AV电影在线播放| 日日影院 | 岛国av网站| WWW,色五月| 色色9 9| 人人97碰| 热这里| 日本久久爽| 欧美性猛交AAAA片黑人 | 一级黄色尤物综合视频手机在线观看| 开心婷婷五月天综合| 91精品激情9| 婷婷五月天丁香社区| 97五月天婷婷午夜| 亚洲九九婷婷| 极品人妻VIDEOSSS人妻| 超碰猛烈的性猛交| 森林影视大全,最好看的2019年视频 | 亚洲综合热| 色五月婷婷中文字幕在线观看| 久久91久久精品久久| 丁香激情久久| 激情五月婷婷丁香综合网| 日韩黄黄| 丁香六月青青草| 欧洲色| 五夜丁香| 亚洲五月天婷婷在线| 99热九九这里只有精品| 亚洲精品中文字幕成人片| 天天日天天插| 亚洲综合久| 久久婷婷五月综合色和| 99高级会所久久| 成人网在线视频| 成人无码髙潮喷水A片| AV操逼网| 亚洲激情婷婷| 激情 婷婷 丁香五月天| 无码地址| 久久免费操| 久久久久久久,99精品视频| 99这里有精品视频| 亚洲AV日韩无码| 婷婷亚洲色| 99久久黄色顶级视频| 久久色五月天| 99久久偷拍视频| 99精品久久| 色射影院| 天天综合久久| 99网| 99热精品在线播放| 激情开心五月亚洲| 六月丁香射婷婷欧美色图片| 97精品综合| 色色色地址| 丁香五月天婷婷大香蕉| av一级棒av| 日日干夜夜干| 五月婷婷,六月丁香| 五月丁香激情综合网| 人妻操在线看| 啪啪五月天啪啪| 婷婷五月天激情四射五月天激情| 九九99免费视频| 一本色道久久88加勒比—| www.婷婷五月.com| 碰碰碰97国产| 丁香五月婷婷av影院| 五月天婷婷成人网| www.色99| 国产成人亚洲综合A∨婷婷| 激情久久久久久| 精品99在线观看| 99热99热在线| 六月激情婷婷| 天天透天天爱| 婷婷五月天国产| 九九热这里| 色五月天成人| 俺去也综合| 五月婷婷在线综合| 五月成人天| 丁香六月色婷婷| 五月丁香亚洲婷婷| 人妻内射视频| 狠狠干天天日| 综合伊人久久| 丁香六月婷婷开心| 久久五月天婷婷| AV九九| 丁香色五月天| 人人操AV| 五月丁香六月激情网站| 十二区无码| 久久99免费视频| 中文字幕性爱视频| 强伦轩人妻一区二区电影| 亚洲最大在线| 婷婷五月天堂网| 夜夜躁狠狠| 2025天天爽天天摸| 99热在线观看精品免费| 丁香五月天婷婷中文字幕| 啪啪操超碰| 黄色片区子| 久久婷婷成人综合色怡春院| 狠狠穞A片一區二區三區| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 丁香伍月婷电影全集| #NAME?| 婷婷五月天中文字幕| www.精品99| 狠狠操之狠狠操| 亚洲十月婷婷综合| 国产激情婷婷| 开心五月激情网| 91久久久久久久| 密着浓厚中出乚交尾GvG935| 亚洲99一级无嗎特制在线| 久久九九99桃花视频| 日本三级日本三级99| 第二色AⅤ| 五月丁香基地| 欧美色久| 久久精品99国产精品日本| 波多野结衣不卡AV| 国产免费一区二区三区三州老师F1F1.CC | 东北婷婷五月天| 一起草性爱不卡视频| 九色自拍| 亚洲V国产V欧美V久久久久久| 真实熟女-91九色| 123草逼网| 人妻性爱| 九九免费视频| 日日夜夜天天综合| 成人龟情网丁香五月| 91丨九色丨老农村| 日韩五月婷婷| 久久这里都是精品| 色五月AV| 操b视频在线观看一区二区| 午夜亚洲国产精品av一区二区| 国产夫妻操逼内射视频| 久久这里只有精品8| 夜夜骑夜夜操| 色婷综合| 婷婷五月丁香六月伊人网| 天天碰夜夜爽| 丁香五月久久| www激情网站| 成人婷婷桔色| 婷婷五月天情色| 97精品人人A片免费看| 先锋资源婷婷| 99 这里只有精品| 色婷精品91| 色婷婷狠狠禁18久久| 五月婷婷六月天| 丁香九月婷婷色| 色五月激情网| 久久九九亚洲| 99高级会所久久| 色婷婷偷拍| 婷婷丁香熟女| 五月丁香六月婷婷亚洲天堂网站| 五月天婷婷成人| 精品夜夜澡人妻无码AV| 久久婷丁香五月| 五月色精品| 99性视频| 9视频1在线| 婷婷之六月丁香| 91碰碰碰| 九九精品亚洲| 国产精品久久久久久五月天加勒比| 色久九| 精品视频网| 丁香桃色综合网| 日本久热| 丁香五月综合久久| 去干网最新版本亚洲版| 久久激情网| 丁香五婷婷| 五月天五月天激情网| 69精品人人人人| 色5月婷婷| 色五月成人| 九九热内射| 婷婷丁香久久五月综合| 99热精品在线观看| 在线资源av-超碰中文在线-成人AV| 久久久99精品| 五月天开心网| 狠狠干五月天婷婷网| 中文AV在线观看| 九九色情网五月天| 狠狠撸激情综合丁香五月天俺来啦| 激情视频网址| 色五月综合激情| 色激情五月| 中文字幕成人日韩| 精品怡红九九九| 国产乱人偷精品人妻A片| 天天插天天狠| 久久久久9| 五月婷婷综合久久| 激情五月综合亚洲另类| 久久久色情| 亚洲久热无码| 久久丁香综合香蕉| 色五月开心开心五月激情五月| 五月丁香久久| 99热这里只有精品国产免费| 99精品综合视频| 亚洲成人综合在线| 婷婷激情综合网| 亚洲AV网址| 丁香六月激情| 五月婷婷熟女| 色情五月丁香| 丁香五月婷婷激情网| 亚洲欧洲国产精品| 综激情网| 婷婷久热| 就要爱综合| 天天日天天操心| 色婷婷六月性| 欧洲色| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 丁香五月天社区| 婷婷综合网在线| 国产精品第一国产精品| 狠狠另类视频| 日本人妻伦在线中文字幕| 亚州激情网站无码| 亚洲欧洲中文日韩久久AV乱码| 夜夜做天天爽| 性爱网五月婷婷| 九九色热视频| 婷婷丁香黄色| 综合网激情| 99 re视频一区| 另类天堂| 色爱99| 九九综合影音先锋| 亚洲成人噜噜| 日本99视频精品免费播放| 丁香六月狠狠干| 五月天大香蕉| 五月婷婷综合在线| 亭亭五月天黑人2014| 婷婷色狠狠| 欧洲色色| www.久久爱| 亚洲妇女熟BBW| 五月丁香六月婷婷在线播放| 丁香五月天堂亚洲社区| 婷婷五月色| 99热精品在线| 熟妇内谢69XXXXXA片| 丁香婷婷色六月| 五月丁香婷婷婷激情爱爱| 九九色图| 天天 日综合| 另类婷婷五月天啪帕帕| 久草大| 久热9| 97在线观视频免费观看| 婷婷激情小说| 国产超碰在线| 天天躁日日躁狠狠躁日日躁2022年5月9日| 99re这里只有精品视频了| 日韩日比视频| 婷婷色色网| 国产精品婷婷午夜在线观看| 日韩另类在线观看| 97人人操人人干| 日本成人噜噜| -91九色大屁股| 国产精产国品一二三在观看| 久狠日av| 色婷婷丁香| 国产日产亚系列精品版优势| se影音资源在线观看| 亭亭色色五月天| 在线观看免费人成视频无码| 色五月播五月| 丁香五月网络网络| 五月婷av| 激情五月天综合| 亚洲婷婷成人五月天| 婷婷五月综合色拍| 国产欧美性成人精品午夜| 色婷婷狠狠| 婷婷八月激情| 欧美婷婷综合| 丁香五月天堂网| 色色色色av色色色色| 99综合免费视频| 97成人丁香| 色五月婷婷色| 综合五月天完整| 99色综合| 偷偷操九九| 亚洲色婷婷| 国产在这里只有精品| 九热在线这里有精品6| 五月综合丁| 国产精品久久久久久亚洲毛片| 五月天激情国产综合婷婷婷| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 欧美婷婷| 亚洲婷婷久久综合| 五月天婷a| 色五月综合| 伊人久久大香| 亚洲V国产V欧美V久久久久久| 香蕉人在线香蕉人在线 | 色播五月天天| 99操逼视频| 天天日P天天射P| 99热这里都是精品| 影音先锋一区| 五月丁香五月婷婷在线观看| 人妻系列久久久久久久久久久 | www.色婷婷.com| 婷婷五月天在线视频网站| 天天综合干| 久草 天堂| 涩五月丝袜婷婷| 亚洲 在线 另类| 日本久久网| 99网99热| 婷婷在线免费| 亚洲激情无码久久| 欧洲亚洲免费视频9| 欧美五月婷婷综合| 中文字幕网伦射乱中文| 狠狠丁香| 99热免费| 天天做天天爱天天要| WWW、日本色丁香、co m| 五月丁香大香蕉| 大香蕉大香蕉在线影院| 99热九九九九| 日逼影音先锋男人AV资源站| 天天综合网在线| 久99久精品| 五月天亭亭俺也| 婷婷丁香激情五月天色色| 热无码A∨| 五月婷视频久久| 久久 婷婷 五月天| 国产免费av在线| 天天综合网色欲香| 欧美一级a| 婷婷五月天性色| 少妇熟女视频一区二区三区| av狠狠操| 99热久| 91超碰人人操| 97热这里精品在线视频| 精品久久这里热66| 婷婷激情五月天激情| 丁香六月无码| 开心五月婷婷在线视频免费观看| 久久这里面只有精品视频| 性爱先锋AV| 久久婷婷视频| 91久操| www.色综合| 99精品自拍| 久久婷五月婷| 九九色影视| a在线观看| 日本久久天堂| 91久久久久久| 色性综合| 久久久色婷婷五月天| 亚洲婷婷视频| 五月丁香六月婷婷精品| 综合狠狠伊人| 9九热视频| 狠狠色婷婷7| 六月婷婷视频| 五月色婷婷综合丁香精品无遮挡| 五月天激情在线视频| 五月香蕉婷婷| 求可以看的AV网址| 五月天婷爱综合| 五月丁香色婷婷熟女| 人妻久久久久久久久久| 狠狠插日日干撸| 情久久综合五月天| 激情婷婷六月天| 久9久成人精品视频| 久久婷婷五月综合色奶水99啪| 婷婷午夜精品久久久| 久久久com| 天天干天天日天天操| 99热超碰| www.91av.com| 久久综合香蕉国产国产蜜臀AV| 97成人超碰免| 九色91美女| 成人五月天综合网| 五月香蕉婷婷| 五月天激情.com| 六月色播| 2017狠狠干| 五月丁香狠狠爱| a网站免费观看| 五月天丁香色色| 久久久噜噜噜www成人| 色人久夂| 国产亚洲99久久精品| 人妻乱码久久久| 婷婷五月丁香久久| 国产色色视频| 天天综合在线网| 粉嫩AV久久一区二区三区| a免费在线| 香蕉伊人综合| 天天综合网、天天综合色 | 日日日日做夜夜夜夜无码| 秋霞电影理论| 开心五月婷婷婷美女| 五月丁香婷中文| 国外亚洲成AV人片在线观看| 另类丁香五月天区图| 五月色亚洲| 亚洲Va成人| 丁香网五月网| WWW.桔色成人.COM| 99成人| 欧美久久久中文字幕| 99热精品观看| 色青青五月| 久久a热| 九九这里只有精品| 婷婷五月成人社区| 婷婷四色五月| 五月婷婷香蕉| 看片视频在线免费日产在线看| 婷婷五月六月| 超碰国产一区| 91精品久久久久久| 色婷婷先锋| 99精品热视频| 日日噜噜夜夜狠狠久久丁香五月| 激情图片久久| 国产精品噜噜在线视频| 婷婷六月天激情| 久99视频| 人妻五月天激情开心网| 九九热这里有精品视频| 色色网五月激情| 久久伊人五月天| 亚洲9久久精品| 亚洲黄色影视| 五月综合缴情网| 人妻熟妇国产精品| 亚洲久久天堂| 久久大香蕉| 五月天精品视频| 日本色婷婷| 99偷拍视频在线日本| 月婷婷亚洲| 99在线热视频| 琪琪色综合网站| 免费黄色视频网址| 五月婷婷AV| 五月婷婷无码| 无码橾| 99色热综合| 99久热这里只有精品| 97超喷视频在线观看| 丁香午月AV中文字幕| 激情五月天婷婷五月天| 强壮的公次次弄得我高潮A片日本 | av在线免费网站| 俺也去综合| 99热在这里只有精品| 碰碰碰97免费精彩视频| 婷婷五月天AV激情| 色五月激情网| 伊人热婷婷| 手机AVAV天堂看网| 欧美久热| 99日本视频| 国产精品激情五月天色婷婷| 色五月成人| 日本激情91| 欧美色爱五月天| 久久精品一区二区三区四区| 色五月色五天色情网| 色色网站| 激情图片亚洲| 青青草a在线| 色婷婷操逼| 色99无码| 久久A区B区| 无码激情AAAAA片-区区| 99热只有精品综合| 九九热视频在线观看| 91婷婷丁香五月亚洲| 一本久久亚洲五月婷婷| 五月丁香色色网| 九九色之九九色之88| 噜噜噜噜噜色| 色天堂婷婷| 99视频精品视频| 久久综合干| 久久婷婷五月综合啪| 色色哒五月婷婷六月丁香| 野战J办公桌椅H| 色色99色色| 婷婷六月激情| 色婷婷狠狠爱| 婷婷性爱网| 五月丁香婷婷综合视频| 天天干天天日天天操| 五月天激情亚洲| 婷婷综合在线观看视频| 香蕉久久国产AV一区二区| 中文网AV| 亚洲a色| 久久婷婷亚洲| 91日本在线观看| 91干在线| 影音先锋天天日| 七七色色综合| 欧美狠狠色| 综合网网欲色| 国产激情婷婷| 五月丁香久久色| 五月天婷婷乱论小说| 色九九一二| 99热免| 免费99色| 人妻操逼视频| 激情九九九九| 五月丁香性| 99热高清在线| 热99在线精品| 久久精品99久久| 午夜爱爱网站| 婷婷五月激情欧美大胆视频| 97超级碰碰碰久久久| 五月婷婷激情综合视频| 五月婷婷婷色| 天天久综合| 91热手机在线| 久久精彩免费视频| 金品在线视频99| 在线观看av网站| 丁香婷婷六月天| 夜夜骑夜夜撸| 九九热只有精品6| 成人无码精品1区2区3区免费看| 亚洲久久婷婷丁香五月天| 五月天操逼激情| 欧美成人A片AAA片在线播放| 久久九九re热| 五月丁香激情四射| 婷婷色婷婷| 99精品在线观看| 操逼123网| 精品视频网| www.9797国产| 色色色色色热| 无码少妇高潮喷水A片免费| 久久草婷婷丁香网站| 丁香五月婷婷总啪啪| 开心网五月色婷婷| 91丨九色丨白浆| 久久丁香五月天| 四虎婷婷五月天| 国产一级黄色影片,| 色五月天成人| 天天日日夜夜| 婷婷久久五月| 国产精品99久久久久久久女警| 丁香五月天精品| 91seAV| 婷婷色情网| 草操网| 91日婷婷在线| 欧洲一区二区| 激情美女五月天| 97干在线视频精品店| 婷婷五月天小说| 五月丁香综合啪啪| 免费在线观看AV网站| 在线综合网| 九九热a| 色情终和网| 久久综合五月天| 综合天天综合| 激情亚洲五月| 9l视频自拍九色9l视频在线观看| 亚洲热手机在线观看| 大香蕉在线99热| 欧美三日本三级少妇三99| 激情综合综合综合| 韩日AV片| 五月婷婷色| 五月天色婷婷基地| 亚洲综合草草| 国产真实乱了老女人视频| 五月婷婷丁香俺日污视频| 99在线精品观看99| 婷婷丁香六月天| 色伊人婷婷| 好好干av| 亚洲视频二区| 久久久久久久久月丁| 色色五月天丁香婷婷| www.五月激情.com| 金品在线视频99| 粉嫩AV久久一区二区三区| 日日夜夜天天综合| 女性自慰系列第五页| 麻豆忘忧草午夜| 九九热最新地址| 一级操逼内射在线视频| 99无码视频| 丁香五月天社区婷婷| 思思热在线观看| 五月丁香六月欧美综合网站| 伊人大香五月天| 97操碰在线视频| 精品影院| 思思99久久| 五月花亭亭| 热99国产精品| 色婷婷亚洲在线观看| 欧美三级A做爰在线观看| 欧美性色视频| 六月香五月婷| 国产精典视频在线观看| 99久操视频| 深爱五月天| 色五月婷婷五月天| 三十路磁力链接| 色综合色| 激情久久网 | 另类的婷婷| 色婷婷五月综合在线| 丁香五月天大香蕉啪啪| 五月丁香五月综合欧美| 激情五月婷婷视频一区二区三区| 五月丁香六月婷婷中合网| 97碰久久| 大香伊人婷婷影院| 内射在线CHINESE| 97操碰| 五月天婷婷基地| 五月天停停基地| 一区二区中文字幕| 国产成人av在线播放| 色五月婷婷91在线| 91人在线观看| 久99久视频| 色色色婷婷五月天| 日韩无码色色| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 日本乱论99| 婷婷热色| 99ER热精品视频| 99热官网精品在线| 丁香婷婷色色| 激情五月婷婷丁香| 婷婷四色成人综合色视| 这里只有精9| 五月丁香六月激情综合网| 九九自拍网| 五月婷婷黄|