小程序雲開發--第一天(才接觸)

小程序雲開發實戰

由於小程序本身存儲數據的能力有限,所以不可能將大量的數據保存在客戶端,而且將數據保存在本地既不安全,也無法與其他小程序用戶共享,所以大多數小程序都需要一個服務端,服務端可以用多種技術實現,如 PHP、Node.js、Python、Asp.net、Java EE 等。不管使用哪種技術實現服務端,開發一款小程序都需要至少配備兩個程序員,一個是開發小程序的程序員,一個是開發服務端的程序員;而且這兩個程序員之間還需要不斷溝通,以便確認共同遵循的接口。

開發一款小程序需要兩名或更多的程序員參與,一直困擾着很多小的創業公司,因爲多僱傭一個人,就會增加很多成本。所以基於這個痛點,很多公司推出了雲開發技術,例如 Bmob 就是較早推出雲開發的公司,所謂雲開發,就是將服務端的功能都封裝起來,然後向客戶端提供 API 訪問這些封裝的功能。服務端的主要功能無外乎數據存儲、文件上傳下載、視頻/音頻流等功能。這些功能大多開發都不困難,但比較費時,所以將其封裝起來供客戶端調用是一個非常好的主意。

騰訊最近推出了自己的雲開發系統,不過這個雲開發系統目前只能用於小程序,而且只提供瞭如下三種:

  • 雲數據庫
  • 雲存儲
  • 雲函數

雲數據庫是指在服務端提供的數據庫服務,小程序雲提供的數據庫屬於文檔數據庫,文檔數據庫有別於關係型數據庫。傳統的關係型數據庫中可以保存若干個表,每一個表由若干條記錄組成。但文檔數據庫保存的是 JSON 格式的數據,每一個 JSON 文檔相當於關係型數據庫中的一個表。也就是說,文檔數據庫保存的是 JSON 文檔的集合。非常流行的 MongoDB 就是典型的文檔數據庫。雲數據庫個組成部分對應的關係如下表所示。

關係數據庫 文檔數據庫
數據庫(DataBase) 數據庫(DataBase)
表(table) 集合(collection)
行(row) 記錄(record/doc)
列(column) 字段(field)

雲存儲爲小程序提供了遠程上傳和下載文件的能力。下載可以提供權限管理,小程序可以通過相應的 API 實現文件的上傳和下載功能。

雲函數就是一段可以運行在服務端的代碼,之所以要將部分代碼在服務端運行,主要有如下兩個原因:

  • 部署多個用戶共享,且容易維護的代碼
  • 獲取敏感信息,如 AppID、OpenID 等

搭建雲開發環境

現在讓我們來開發第一個與雲的小程序,首先應該下載最新版的微信開發者工具,然後在小程序後臺獲取 AppID。使用雲開發功能,必須使用真實的 AppID,不能使用測試用的 AppID。

啓動微信開發者工具,新創建一個小程序工程。在創建小程序工程的過程中,需要輸入 AppID 和項目名稱,然後在最下面的目標列表中選擇“建立雲開發快速啓動模板”選項,如下圖所示。

image.png

創建完支持雲開發的小程序工程後,工程目錄結構和 IDE 主界面如下圖所示。當前工程默認帶了一些例子(模板中的例子)來幫助理解和開發基於雲的小程序。

image.png

如果第一次使用這個 AppID 開發基於雲的小程序,應該單擊界面上方的“雲開發”按鈕,會顯示如下圖所示的頁面。

image.png

這是一個開通雲服務的頁面,單擊“開通”按鈕,就會開通用於雲開發的服務。在開通的過程中會出現如下圖所示的確認對話框,單擊”確定“按鈕進入下一個設置頁面。

image.png

這個頁面是”新建環境“頁面,如下圖所示。需要輸入“環境名稱”,一個任意的字符串。在下面列出了基礎版的配置,如數據庫存儲空空間、雲函數數量等。如果想要更多的資源,那以後肯定是要收費的,天下沒有免費的午餐。不過這個配置做實驗和用戶量不是非常大的小程序還是夠用的。

image.png

單擊“確定”按鈕,創建一個環境,然後進入如下圖所示的雲開發控制檯。在這個控制檯中可以管理用戶、雲數據庫、雲存儲、雲函數及統計分析,並且會顯示相關的信息,如今日 API 調用:

image.png

如果想創建新環境,可以將鼠標放在右側當前環境 minicloud 上,會彈出如下圖所示的菜單,單擊”創建新環境“菜單項則會創建一個新的環境,目前每個小程序賬號課免費創建兩個新環境。

image.png

部署 login 雲函數

模板會默認創建一個 login 雲函數,用於返回 OpenID(標識當前微信登錄用戶的 ID),所以在開發基於雲的小程序之前,首先要先部署 login 雲函數。

選中 login 雲函數,在右鍵菜單中單擊“上傳並部署”菜單項進行部署,如下圖所示。

image.png

成功部署 login 雲函數後,回到小程序的主頁面,單擊“點擊獲取 openid”按鈕,如圖所示,則會通過 login 雲函數獲取 openid。

image.png

備註:如果遇到以下情況,這樣操作:cmd命令進入你項目的目錄,如:d:/test/demo/cloudfunctions/login(你需要執行的雲函數名稱/文件夾) 執行 npm install操作,沒有安裝node.js的安裝下啊,

執行npm install操作必須是在你當前項目的雲函數目錄下執行操作

執行npm install操作必須是在你當前項目的雲函數目錄下執行操作

執行npm install操作必須是在你當前項目的雲函數目錄下執行操作

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章