微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

微信小程序云开发之云函数创建

云函数

云函数是一段运行在云端的代码,无需管理服务器,在开发工具内编写、一键上传部署即可运行后端代码

小程序内提供了专门用于云函数调用的 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)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。