13.小程序第一次使用云函数
2019-07-24 本文已影响0人
TensorFlow开发者
场景
在开发小程序过程中,第一次使用云函数,不知怎么配置,今天把配好的流程整理记录一下。
步骤分解如下5步:
步骤1: 在project.config.json文件中配置云函数根目录。
"cloudfunctionRoot": "./cloudFunctions/",
注意⚠️:我第一次配置时,遇到的坑:配置的目录中少了./,导致配置失败。
这一步的结果,出现cloudFunctions目录(后面的develop-environment是我配置的环境,正常情况下,你的和我的环境不同。)
步骤2: 新建Node.js云函数。
在cloudFunctions目录上,右击----新建Node.js云函数。
这里我新建了两个云函数:add和checkToken
步骤3:编辑并部署云函数
以我的add云函数为例:
本段代码的意思是将传入的 a 和 b 相加并作为 sum 字段返回给调用端。
云函数的传入参数有两个,一个是 event 对象,一个是 context 对象。event 指的是触发云函数的事件,当小程序端调用云函数时,event 就是小程序端调用云函数时传入的参数,外加后端自动注入的小程序用户的 openid 和小程序的 appid。context 对象包含了此处调用的调用信息和运行状态,可以用它来了解服务运行的情况。在模板中也默认 require 了 wx-server-sdk,这是一个帮助我们在云函数中操作数据库、存储以及调用其他云函数的微信提供的库,关于 wx-server-sdk的使用我们在另一个章节讲述。
步骤4: 上传并部署云函数
在云函数目录上,右击----上传并部署:所有文件。
部署云函数
步骤5: 调用云函数
在需要调用云函数的地方调用上面的add函数:
wx.cloud.callFunction({
// 云函数名称
name: 'add',
// 传给云函数的参数
data: {
a: 1,
b: 2,
},
success: function (res) {
console.log(res.result.sum) // 3
},
fail: console.error
})
运行结果:3
如果,你也遇到了一下报错,请参考我的另一文中此报错的解决方法:解决Cannot find module 'wx-server-sdk'
Error: errCode: -404011 cloud function execution error | errMsg:
cloud.callFunction:fail cloud function service error code -504002,
error message error is not defined; at cloud.callFunction api; '
如果顺利的话,经过以上5步,就可以调用你的云函数了。