雲開發是微信團隊聯合騰訊雲提供的原生Serverless雲服務,可以快速實現小程序業務的開發,快速迭代
雲開發能提供什么?
數據存儲能力:小程序->數據庫->小程序
文件存儲能力:由雲服務商接管文件存儲系統,雲服務器提供CDN,API調用很方便
計算能力:buy resources -> upload your code -> publish
- 存儲:在小程序端直接上傳/下載雲端文件,可視化管理
- 雲函數:在雲端運行的代碼,微信私有天然鑒權,開發者只需編寫自身業務邏輯代碼
- 雲數據庫:一個既可在小程序前端操作,也能在雲函數中讀寫的JSON數據庫
- 音視頻服務:提供互通高品質實時音視頻通話服務,支持互動白板,美顏濾鏡,高清視頻通話等,基於雲開發快速接入
- 智能圖像服務:集成智能鑒黃、人臉識別、人臉核身等AI視覺能力,基於雲開發快速接入
有了雲開發,微信小程序可以一天一交付,一天多交付
小程序的雲開發所用到的主要是前端開發的知識
小程序注冊頁面/小程序后台管理登錄頁:https://mp.weixin.qq.com/
微信開發者工具下載:https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html
官方技術文檔都是最值得閱讀的參考資料:https://developers.weixin.qq.com/miniprogram/dev/wxcloud/basis/getting-started.html
查找AppID:小程序的后台管理頁->左側開發管理->開發設置
開通雲開發服務,找到雲開發的環境ID,指定小程序的雲開發環境,打開源代碼文件夾miniprogram里的app.js,找到如下代碼:
wx.cloud.init({
// 此處請填入環境 ID, 環境 ID 可打開雲控制台查看
env: 'my-env-id',
traceUser: true,
})
在 env: 'my-env-id'處改成你的環境 ID,如 env: 'xly-snoop'
下載Nodejs
NodeJS是在服務端運行JavaScript的運行環境,雲開發所使用的的服務端環境就是NodeJS。npm是Node包管理器,通過npm,我們可以非常方便的安裝雲開發所需要的依賴包
npm是前端開發必不可少的包(模塊)管理器,它的主要功能就是來管理包package,包括安裝、卸載、更新、查看、搜索、發布等,其他編程語言也有類似的包管理器,比如Python的pip,Java的maven。
我們可以把包管理器看成是windows的軟件管理中心或手機的應用中心,只要是它們用的是可視化界面,包管理器用的是命令行Command Line。
NodeJS下載地址:http://nodejs.cn/download/
在命令行中輸入:
node --version
npm --version
如果顯示具體版本號,則表示環境安裝完成
部署and上傳雲函數
cloudfunctions里放的是雲函數,miniprogram放的是小程序的頁面
使用鼠標右鍵其中的一個雲函數目錄比如 login,在右鍵菜單中選擇在終端中打開,打開后在終端中輸入以下代碼並按 Enter 回車執行:
npm install
這時候會下載雲函數的依賴模塊,下載完成后,再右鍵 login 雲函數目錄,點擊“創建並部署:所有文件”,這時會把本地的雲函數上傳到雲端,上傳成功后在 login 雲函數目錄圖標會變成一朵小雲。
在開發者工具的工具欄上點擊“雲開發”圖標會打開雲開發控制台,在雲開發控制台點擊雲函數圖標,就能在雲函數列表里看到我們上傳好的“login”雲函數
接着按照同樣的方法把其它所有雲函數都部署並上傳:
右鍵雲函數目錄,選擇在終端中打開,輸入 npm install命令下載依賴文件;
然后再右鍵雲函數目錄,點擊“創建並部署:所有文件”
在雲開發控制台–雲函數–雲函數列表查看雲函數是否部署成功。
為什么要在雲函數目錄執行 npm install?
npm install會下載雲函數目錄下的配置文件package.json里的dependencies,它表示的是當前雲函數需要依賴的模塊。package.json在哪里,就在哪里執行 npm install,沒有