最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

小程序云開發(fā)入門第六章,云函數(shù)的講解

2021-02-02 10:29 作者:編程小石頭  | 我要投稿

6-1,認(rèn)識云函數(shù)

官方文檔:https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/functions.html

我們先來看下官方給出的云函數(shù)簡介

其實通俗來講,云函數(shù)也是運行在服務(wù)器上的,只不過和我們傳統(tǒng)開發(fā)語言相比。微信官方為我們提供的傻瓜式的一鍵部署。也就是說你只需要把心思花在業(yè)務(wù)邏輯代碼的編寫上即可。無需關(guān)心寫好如何部署,無需關(guān)心安全問題,無需關(guān)心鑒權(quán)問題。

我們下面以獲取openid為例,來看看云函數(shù),php,Java的實現(xiàn)對比

  • php獲取用戶openid

如果用php來獲取openid必須經(jīng)歷下面幾步

  • 1,去小程序后臺拿到appid和appSecret

  • 2,請求微信的對應(yīng)接口

  • 3,獲取數(shù)據(jù)后進行解碼

  • 4,購買服務(wù)器,配置服務(wù)器

  • 5,購買域名,域名備案,配置https

  • 6,部署php代碼到服務(wù)器

  • 7,小程序端調(diào)用php接口

Java獲取openid和上面的php步驟一樣,也是需要上面7步。而我們用云函數(shù)獲取openid呢,就只需要簡單的3步就行了,代碼量也能顯著減少

6-1-1,云函數(shù)獲取openid

用云函數(shù)的話,只需要3步

  • 1,編寫云函數(shù)

  • 2,一鍵部署云函數(shù)

  • 3,調(diào)用云函數(shù)

來看下云函數(shù)代碼,只需要10行代碼,即可輕松搞定


6-2,云函數(shù)的優(yōu)勢

我們用云函數(shù)和上一章的云數(shù)據(jù)庫進行下對比

  • 來看下官方文檔是如何描述云函數(shù)的 云函數(shù)屬于管理端,在云函數(shù)中運行的代碼擁有不受限的數(shù)據(jù)庫讀寫權(quán)限和云文件讀寫權(quán)限。需特別注意,云函數(shù)運行環(huán)境即是管理端,與云函數(shù)中的傳入的 openId 對應(yīng)的微信用戶是否是小程序的管理員 / 開發(fā)者無關(guān)。

6-3,云函數(shù)調(diào)用演示

官方文檔:https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/functions/Cloud.callFunction.html

6-3-0,初始化云函數(shù)的環(huán)境

  • 1,創(chuàng)建一個文件夾cloud和pages平行


  • 2,在project.config.json里面配置云函數(shù)所在目錄為cloud 在project.config.json里面添加如下配置

然后點擊保存,我們的cloud文件夾前面就有一個云朵

就代表我們云函數(shù)初始化成功啦。

  • 新一個云函數(shù)


  • 如果只創(chuàng)建一個云函數(shù)的時候,會出現(xiàn)下面的問題。

解決方案:只需要在cloud文件夾下新建一個空白文件即可。

6-3-1,云函數(shù)獲取openid

調(diào)用云函數(shù)有兩種寫法

  • 1,傳統(tǒng)的success和fail


  • 2,用promise寫法then和catch


6-3-2,數(shù)據(jù)的導(dǎo)入和導(dǎo)出

  • 數(shù)據(jù)導(dǎo)出,做數(shù)據(jù)備份

比如導(dǎo)入為json數(shù)據(jù)如下


  • 數(shù)據(jù)導(dǎo)入,為了快速的大量的創(chuàng)建一些數(shù)據(jù)。 為了方便付費用戶,我這里提前準(zhǔn)備好了108條數(shù)據(jù),付費用戶直接去下載即可

把下載好的這108條數(shù)據(jù)的json文件,導(dǎo)入到數(shù)據(jù)庫如下


6-3-3,云函數(shù)獲取數(shù)據(jù)

注意:云函數(shù)只要有變動,就要重新部署,否則云函數(shù)不生效。

遇到了一個問題,如下

出現(xiàn)原因:如果你有兩個云開發(fā)環(huán)境,偶爾會出現(xiàn)上圖所示的問題。 解決問題:有兩種

  • 1,在云函數(shù)里指定你要使用那個云開發(fā)環(huán)境


  • 2,使用DYNAMIC_CURRENT_ENV常量 (提倡使用這個)

我們這里會和小程序里直接調(diào)用數(shù)據(jù)庫的查詢進行下對比


6-3-4,云函數(shù)修改數(shù)據(jù)

本地小程序直接調(diào)用數(shù)據(jù)庫修改會有問題

  • 只能修改自己創(chuàng)建的數(shù)據(jù),別人創(chuàng)建的數(shù)據(jù),就沒有辦法修改了。


  • 如何解決呢? 用云函數(shù)來修改就可以解決這個問題啦。

  • 1,先創(chuàng)建云函數(shù)update0129


  • 2,調(diào)用云函數(shù)就行修改


6-3-5,云函數(shù)刪除數(shù)據(jù)

  • 1,創(chuàng)建一個刪除商品的云函數(shù)remove0129


  • 2,調(diào)用這個云函數(shù)進行刪除操作


6-3-6,提交數(shù)據(jù)到云函數(shù)

  • 1,創(chuàng)建云函數(shù),并部署


  • 2,調(diào)用云函數(shù)


6-4,使用云函數(shù)常見問題

6-4-1,云函數(shù)里面沒有初始化環(huán)境變量


解決方案如下:

代碼片段

cloud.init({ ?env: cloud.DYNAMIC_CURRENT_ENV })


小程序云開發(fā)入門第六章,云函數(shù)的講解的評論 (共 條)

分享到微博請遵守國家法律
新宾| 行唐县| 金寨县| 汝城县| 搜索| 内黄县| 南宫市| 青田县| 新和县| 九江县| 凭祥市| 都昌县| 晋城| 和田市| 文昌市| 丹东市| 武山县| 禄丰县| 宿松县| 勐海县| 五河县| 利辛县| 郓城县| 阿勒泰市| 临湘市| 房山区| 会昌县| 师宗县| 山丹县| 米脂县| 祁门县| 兴化市| 得荣县| 安国市| 樟树市| 大新县| 乳山市| 五指山市| 宣恩县| 理塘县| 德钦县|