微信小程序雲開發之雲函數創建


雲函數

雲函數是一段運行在雲端的代碼,無需管理服務器,在開發工具內編寫、一鍵上傳部署即可運行后端代碼。

小程序內提供了專門用於雲函數調用的 API。開發者可以在雲函數內使用 wx-server-sdk 提供的 getWXContext 方法獲取到每次調用的上下文(appid、openid 等),無需維護復雜的鑒權機制,即可獲取天然可信任的用戶登錄態(openid)。

1. 雲函數創建

根據官網提示,創建一個雲函數,命名為 add, 功能是將 a , b 兩數相加,步驟如下:

  1. 在文件夾 cloudfunctions 目錄下創建文件夾 add, 編輯add中的index.js文件:
// 雲函數入口文件
const cloud = require('wx-server-sdk') 

// 雲函數入口函數
exports.main = async (event, context) => {
  console.log(event)
  console.log(context)

  const {a, b} = event
  const {OPENID, APPID} = cloud.getWXContext() // 這里獲取到的 openId 和 appId 是可信的
  const sum = a + b

  return {
    OPENID,
    APPID,
    sum
  }
}

在小程序中調用這個雲函數前,我們還需要先將該雲函數部署到雲端。在雲函數目錄上右鍵,在右鍵菜單中,我們可以將雲函數整體打包上傳並部署到線上環境中。

2. 雲函數調用

部署完成后,我們可以在小程序中調用該雲函數:

//小程序端調用方法
wx.cloud.callFunction({
  // 需要調用的雲函數名
  name: 'sum',
  // 傳給雲函數的參數
  data: {
    a: 1,
    b: 2,
  },
  success: function(res) {
    console.log(res.result.sum) // 3
  },
  fail: function(err) {
      console.log(err)
  }
})

也可以使用 Promise 調用方式:

wx.cloud.callFunction({
  // 雲函數名稱
  name: 'add',
  // 傳給雲函數的參數
  data: {
    a: 1,
    b: 2,
  },
}).then(res => {
    console.log(res.result) // 3
  })
  .catch(console.error)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM