Getting started
- 注冊(cè)
- 設(shè)置(管理后臺(tái))
- 安裝開(kāi)發(fā)者工具
- Coding
個(gè)人小程序有很多API限制彼念,特殊權(quán)限需要特殊認(rèn)證谆棱。
小程序和公眾號(hào)不能共用同一個(gè)郵箱,如需綁定小程序和公眾號(hào)嗓违,關(guān)聯(lián)配置瓷翻。
客戶(hù)端(小程序)
能做什么赖歌?
https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html
- 基礎(chǔ)能力
- 硬件能力
上面文檔中沒(méi)提到的:位置缺虐、相機(jī) 等 - 開(kāi)放能力
- 跳轉(zhuǎn)
小程序跳轉(zhuǎn)小程序:wx.navigateToMiniProgram
小程序跳轉(zhuǎn)公眾號(hào)文章:webview
公眾號(hào)(菜單芜壁、文章)跳轉(zhuǎn)小程序:關(guān)聯(lián)
APP跳轉(zhuǎn)小程序:移動(dòng)應(yīng)用拉起小程序
小程序跳轉(zhuǎn)APP:launchApp
授權(quán)
https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/authorize.html
Codes
發(fā)布運(yùn)營(yíng)
可持續(xù)化發(fā)展
服務(wù)端(非零成本)
https://developers.weixin.qq.com/miniprogram/dev/api-backend/
鑒權(quán)、加密解密
https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/signature.htmlopenid vs unionid
同一用戶(hù)不同小程序openid不同志笼,UnionID設(shè)置后相同
https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/union-id.html
服務(wù)端(云開(kāi)發(fā))
What's that?
通常把篓,實(shí)現(xiàn)一個(gè)非靜態(tài)的應(yīng)用纫溃,服務(wù)端需要做以下事情:
- 購(gòu)買(mǎi)一個(gè)域名,完成備案韧掩;
- 購(gòu)買(mǎi)一個(gè) SSL 證書(shū)紊浩,完成和域名的配置;
- 購(gòu)買(mǎi)一個(gè)服務(wù)器,配置好服務(wù)器的開(kāi)發(fā)環(huán)境坊谁,并處理域名到路由的相關(guān)配置费彼;
- 購(gòu)買(mǎi)一個(gè)數(shù)據(jù)庫(kù),并完成配置口芍;
- 實(shí)現(xiàn)服務(wù)端業(yè)務(wù)邏輯
- 設(shè)計(jì)數(shù)據(jù)表箍铲,實(shí)現(xiàn)增刪改查
- 用戶(hù)登錄驗(yàn)證、授權(quán)(微信小程序get access token)
- 配置各種日志監(jiān)控等
而云開(kāi)發(fā)
- 云函數(shù)鬓椭、云存儲(chǔ):解決服務(wù)器颠猴、域名問(wèn)題
- 云數(shù)據(jù)庫(kù):解決數(shù)據(jù)庫(kù)問(wèn)題
- 部署:一鍵部署、兩套環(huán)境
- 運(yùn)維監(jiān)控:記錄請(qǐng)求日志小染、自測(cè)翘瓮、可視化控制臺(tái)
- what's more:天然鑒權(quán),無(wú)需客戶(hù)端和服務(wù)端之間的鑒權(quán)裤翩,并在服務(wù)端自帶用戶(hù)登錄態(tài)信息openid
== JS+NodeJS+MongoDB呵扛,BUT
客戶(hù)端也可直接操作數(shù)據(jù)庫(kù)、存儲(chǔ)
將云函數(shù)當(dāng)成獨(dú)立服務(wù)而不是函數(shù)使用臼疫,不要試圖提取公共函數(shù)择份、組件之類(lèi)……遠(yuǎn)程函數(shù)之間的調(diào)用是服務(wù)之間的調(diào)用,有耗時(shí)問(wèn)題(請(qǐng)求頻率決定熱啟動(dòng)冷啟動(dòng))烫堤。
可使用tcb-router解決荣赶,回到傳統(tǒng)開(kāi)發(fā)模式,將一個(gè)云函數(shù)當(dāng)成唯一服務(wù)端鸽斟,通過(guò)路由匹配拔创,抵達(dá)各個(gè)API。
但可能有并發(fā)流量限制富蓄,并且失去了云函數(shù)的優(yōu)勢(shì)新增HTTP API
有一些bug剩燥。。立倍。
配額限制
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference/quota.html
Show me the code
小程序開(kāi)發(fā)工具新建云開(kāi)發(fā)模板項(xiàng)目
...
微信小程序云開(kāi)發(fā)對(duì)應(yīng)支付寶的Basement
支付寶小程序已開(kāi)放個(gè)人開(kāi)發(fā)者灭红,公測(cè)中
后端云服務(wù) basement
后端云服務(wù)將服務(wù)器購(gòu)買(mǎi),配置口注,發(fā)布变擒,運(yùn)維等完全解決,讓開(kāi)發(fā)者只用關(guān)心自己的代碼邏輯部分的編寫(xiě)寝志,
相比云應(yīng)用娇斑,更適合編寫(xiě)輕量級(jí)的小程序策添,但是每個(gè)后端云服務(wù)只能支持一個(gè)小程序運(yùn)行。
支付寶也正在推廣中毫缆,免費(fèi)
Basement
Basement 快速開(kāi)始示例
云應(yīng)用 vs Basement
云應(yīng)用:有服務(wù)器自主運(yùn)維模式
Basement:無(wú)服務(wù)器托管運(yùn)維模式-
微信小程序vs支付寶小程序
微信小程序:人
支付寶小程序:信用唯竹、支付類(lèi),所以很重安全
Serverless
Serverless 是指由第三方負(fù)責(zé)后端的基礎(chǔ)架構(gòu)和設(shè)施苦丁,以服務(wù)的方式向開(kāi)發(fā)者提供所需功能浸颓。開(kāi)發(fā)者不再需要考慮服務(wù)器的問(wèn)題,計(jì)算資源作為服務(wù)而不是服務(wù)器的概念出現(xiàn)芬骄,開(kāi)發(fā)者只需要專(zhuān)注于代碼和業(yè)務(wù)猾愿,快速迭代,更快速地開(kāi)發(fā)軟件账阻。
Serverless 包含了以下領(lǐng)域:
BaaS:后端即服務(wù)(Backend as a Service)蒂秘,向開(kāi)發(fā)者提供后端基礎(chǔ)功能作為服務(wù),通過(guò) API 方式進(jìn)行調(diào)用淘太。比如:文件存儲(chǔ)姻僧、數(shù)據(jù)庫(kù)、消息等蒲牧。
FaaS:函數(shù)即服務(wù)(Function as a Service)撇贺,允許開(kāi)發(fā)者直接將程序部署到平臺(tái)上,以函數(shù)作為最小單元冰抢,通過(guò) API 方式進(jìn)行調(diào)用松嘶。
Thanks!