深入小程序云开发之云函数

千江月

第一部分 为什么要用云函数

微信官方提供的从小程序端查询云数据库的能力(client-api),那为什么还要使用云函数(server-api)呢?我认为答案有两方面:

1. 趋势使然
现在“云”计算,云端处理能力可以说是一种大趋势。可以预见,往后的网络时代,客户端会越来越瘦(瘦客户端,想一想原来笨重的桌面电脑到手提电脑再到手机的演化道路,现在很多人能在手机上完成的事情都不愿打开电脑了。),大部分计算和数据处理都会交付云端完成。只需要把最后结果传输给用户就行了。
作为云服务的玩家,腾讯不能不有这一招。

2. 技术原因
在顶层设计上小程序客户端有以下限制:
a. 权限限制:只有创建者才既可读又可写数据;其他用户最多只能读不能写别人创建在云数据库中的数据;而官方默认是只有创建者可读可写,其他人读数据都不行。每次创建一个集合开发者都必须手动修改权限。不知多少开发者跳过这个坑,查不到数据以为是自己代码有问题,其实是未修改权限。
b. 小程序客户端一次只能更新一条数据,如果需要更新多个数据,需在 Server 端进行操作(云函数)。
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database/update.html

以上两个原因是相关的。微信官方之所以人为设定那么多限制,不排除部分是由于第一方面的原因。其实个人觉得云函数很麻烦,开发过程中异常痛苦,有踩不完的坑。

一些本可以在客户端完成的任务为什么一定要通过云函数才能完成呢?这不是无端增加用户的成本也增加了官方维护运营的成本吗?揣测官方可能想通过这种方式引导用户多用云函数,从而有一种推广作用。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐