腾讯cloudBase入门

2,528 阅读2分钟

cloudBase是什么

我的理解cloudBase就是一整套server-less环境,主要包含了云函数(faas)、云数据库(类似于MongoDB),云存储(对象存储)。 简单的说,你可以完全利用这3个开发一套REST-API,存储数据、文件,最主要的是有免费资源,可以白嫖。鉴于官网以及腾讯云文档比较多,比较乱,我这里整理一下我是如何入门的。

源码在这

官方文档

1、开通环境

打开腾讯云官网,登录后,找到云开发CloudBase,进去新建一个免费环境。注意:免费环境有相应资源限制。

2、安装CLI

首先要安装一下cloudBase CLI,这个难度不大,可以直接看文档。npm i -g @cloudbase/cli

安装完成第一步要先登录,命令行下输入 tcb login

3、创建一个云函数

我一般先在网页上新建。 之后通过tcb fn code:download下载到本地编辑,注意下载完后先·npm init·一下,然后安装依赖。 同时,在函数上级目录找一下cloudbaserc.js 里面加上这样句installDependency: true

4、打开http触发以及配置安全域名

这个比较关键,没配好就会跨域。在云函数 --> Http触发里配置安全域名。再点击具体的函数,再函数配置中修改触发路径。由于安全域名需要一段时间生效,现在就看与正式编码了。

5、第一个云函数

简单的说云函数就是导出一个函数,你不再需要关心服务器,环境,内存,你只需要实现你自己的逻辑. 这时候你可以把这当作一个nodejs项目来写,记得先npm init ,然后安装相应依赖即可,但是不管怎么写,index.js里只能导出一个主函数。

6、连接数据库

连接数据库之前请先新建一个数据库

const app = require('./tcb')
const db = app.database()
const logDB = db.collection('logs')

用的时候建议使用async/await,因为本质上它是一个promise

const list = await logDB.limit(100).skip((page-1)*100).get()

7、部署函数

部署函数,在项目根目录下执行tc fn deploy即可

8、注意事项

1、如何打日志

直接console是不会记录到云函数的日志里的,只是你本地运行的时候能够看见。因此建议使用tcb打日志,代码如下

const admin = require('tcb-admin-node')
admin.logger().log({data:JSON.stringify(data)})

2、debug

目前没找到什么有效的debug方法,当出现bug的时候,返回值往往是空对象或者null,只能一层一层往上找,尤其多注意一下引用tcb-admin-node的操作。大家有什么好方法欢迎评论

🏆 技术专题第七期 |万物皆可 Serverless