微信小程序云函数入门
发布于 3 年前 作者 fanmin 753 次浏览 来自 分享

一、什么是云函数?
云函数即在云端(服务器端)运行的函数。在物理设计上,一个云函数可由多个文件组成,占用一定量的 CPU 内存等计算资源;各云函数完全独立;可分别部署在不同的地区。开发者无需购买、搭建服务器,只需编写函数代码并部署到云端即可在小程序端调用,同时云函数之间也可互相调用。
微信官方开发文档:
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/functions.html」- https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/functions.html

二、云函数的优势
云开发的云函数的独特优势在于与微信登录鉴权的无缝整合。当小程序端调用云函数时,云函数的传入参数中会被注入小程序端用户的 openid,开发者无需校验 openid 的正确性,因为微信已经完成了这部分鉴权,开发者可以直接使用该 openid。

三、部署云函数步骤
1) 首先需要设置云函数的目录(cloudfunctionRoot),项目根目录找到 project.config.json 文件,新增 cloudfunctionRoot 字段,指定本地已存在的目录作为云函数的本地根目录。

2) 右键创建一个模板,包含三个文件,index.js / config.json / package.json。

3) 云函数名称就是之前创建这个云函数文件夹的名称(记着这个后面小程序端调用需要用到这个名称),并且需要 exports 出固定的 main 名称的一个函数,函数逻辑里面return返回云函数接口返回的数据(小程序调用后可以使用result属性来获取返回的数据)。

4) 云函数写好之后需要在开发者工具里面上传并部署(此时这里有一个云端安装依赖的,是如果你package.json安装了别的npm依赖包的话需要安装依赖 -> wx-server-sdk)

5) 云函数已经写好上传部署好了,需要小程序端进行调用,调用前需要小程序端init 初始化,判断版本兼容 && 调用wx.cloud.init进行一个初始化。

6) init初始化后就可以开始进行调用了,callFunction进行调用云函数。callFunction 接受一个对象参数,name是前面提及的云函数名称,data数据可以在云函数的event访问到,函数返回的是一个Promise,或者也可以使用success, fail 形式进行回调监听处理。

四、注意事项
云函数储存容量链接调用次数有限制,所以尽量在用的时候优化逻辑避免多次无用的调用,实在调用量太高的话也只能购买升级云环境的版本,提高调用次数量了。

回到顶部