腾讯云布道师白宦成分享微信小程序云开发项目经验

2024-06-01
来源:网络整理

此次云学院还邀请了课程开发者、腾讯云布道师、CSDN专家、中国开发团队负责人白欢成分享了其在微信小程序云开发项目中的经验:

Q:什么是小程序云开发?

简单来说,小程序云开发就是为开发者提供“云函数”、“云数据库”和“云文件存储”的服务,并将这些能力封装成具体的接口,可以使用wx..xxx来调用。

Q:小程序云开发存在哪些误区?

首先小程序云开发不是PaaS,它和我们熟悉的BAE、App不一样,它提供的云函数不是一个完整的环境,而是以特定的事件为单位,严格来说,它提供的云函数其实是FaaS(As a)。类似的产品还有 、Bmob的 、AWS的 等等。

其次,小程序云开发不像Bmob那样是一个BaaS,不像上面两款产品那样提供了丰富的API接口,可以实现各种功能。小程序云开发对接口进行了深度封装,只能在小程序和云函数中通过wx.和wx--sdk调用(截止2018年8月24日),因此小程序云开发只能在小程序中应用,无法在其他产品(如App)中应用。

Q:小程序云开发适合什么场景?

所有业务逻辑仅需在小程序端完成,无需过于复杂的管理逻辑(这是因为小程序外部无法调用云函数和云数据库,因此无法实现强大的Web管理界面)

Q:小程序云开发有哪些优势?

1.微信登录逻辑简单

小程序云开发可以自动验证用户登录,开发者无需再次验证用户身份,通过云函数即可直接获取用户信息,在直接调用数据库或文件存储API时,也会自动关联用户对应的

若用户授权小程序获取昵称等信息,该信息会自动出现在小程序云开发管理控制台的用户登录栏目中,开发者无需手动上传。

2. 免费

目前小程序云开发提供了1GB的免费数据库存储和5GB的免费文件存储,这个存储容量虽然不是很大,但对于一些个人开发者来说已经足够了,开发者可以利用这个容量快速开发自己的小程序。

3. 简单

小程序云开发的调用非常简单,你只需要了解一些简单的异步知识()就可以完成小程序云开发的内容。

4. 禁止入侵

小程序云开发本身是对小程序基础库层面的封装,无需引入其他库即可使用。

同样地,你也可以将原有应用中的部分功能迁移到小程序云开发中。

Q:在小程序开发过程中,遇到过哪些坑?

1. 异步请求需要通过

在云函数中我们大多实现一些小程序中无法实现或者受域名限制的请求接口,这时候我们就不能使用传统方式去请求了,因为传统方式执行完之后,云函数已经把数据返回给客户端了,我们需要使用它去处理。

例如以下代码是我请求豆瓣API的代码:

上述代码来自该项目 -

2. 权力结构相对简单

小程序云开发提供的数据库权限非常简单,只有四种:

• 仅创建者可写,所有人可读:数据仅创建者可写,所有人可读;例如一篇文章。

• 仅创建者可读写:数据只能由创建者读写,其他用户无法读写;例如使用私人相册。

• 仅管理端可写,所有人都可读:该数据仅管理端可写,所有人都可读;例如产品信息。

• 仅管理端可读写:该类数据只有管理端才可以读写;比如后台使用的非暴露数据。

在大多数情况下,简单地使用这四个权限根本不能满足我们的要求,所以

我们还需要在代码级别做出一些判断,以确保代码的行为符合我们的预期。

比如你在做一个书柜项目时,想设置书柜里的书籍是可以被第三方查看还是不能被第三方查看,此时只能将集合数据设置为“只有创建者可写,所有人都可读”,并且用代码来控制是否显示特定的信息,比如增加一个字段来控制。

分享