uniCloud云开发⼊门:了解云函数、云数据库、云存储的基本概念Hello uniCloud!
第⼀个云函数,客户端访问此接⼝时返回⼀个“Hello uniCloud!”。
云函数hello.js代码如下:
'use strict';
//main⽅法
exports.main=async(event, context)=>{
console.log(event);//传⼊的参数
console.log(context);//上下⽂信息
//返回数据给客户端
return{
msg:"Hello uniCloud!"
}
};
将编辑好的云函数上传部署。
在uniapp客户端代码如下:
// 通过内置uniCloud.callFunction⽅法调⽤云函数,promise⽅式
uniCloud.callFunction({
name:'hello',//云函数名
data:{}//参数
}).then((res)=>{
console.log(res);// {"msg":"Hello uniCloud!"}
}).catch((err)=>{
<(err);
});
以上就完成了⼀个接⼝的开发部署并调⽤的全流程。
是不是很⽅便,不⽤购买服务器,不⽤启动服务,我们只需要关⼼具体功能业务即可。
uniCloud 简介
云数据库服务uniCloud是由DCloud联合阿⾥云、腾讯云退出的,基于serverless的、跨全端的、⽤js开发服服务端的云产品。
具有免运维、低服务器成本、⼊门上⼿快、开发效率⾼的特点,⾮常适合个⼈或⼩型团队的项⽬开发。
uniCloud还能完成更多的功能,请看下⽂继续了解。
以下内容为对⾃官⽅⽂档的学习记录(精简提要),。
⼀、web 控制台
可以让你采⽤可视化的⽅式来管理云函数、云数据库、云存储、前端⽹页托管等。
⼆、了解云函数
云函数是运⾏在云端的JavaScript代码。
需要先了解相关知识,再进⾏云函数的开发。
1. 内置 API
uniCloud扩展了以下API,可以直接在云函数开发中使⽤。
API描述
uniCloud.callFunction()调⽤云函数
uniCloud.database()云数据库对象
uniCloud.uploadFile()上传⽂件到云存储
uniCloud.downloadFile()下载云存储的⽂件到运⾏环境uniCloud.deleteFile()删除云存储的⽂件
2. ⽇志输出
本地调试云函数时,可正常使⽤console.log()进⾏⽇志打印。
在云端时可使⽤uniCloud.logger.log进⾏⽇志打印到uniCloud的web控制台。
info()、warn()、error()的打印输出也同理。
3. 定时触发
云函数⽀持定时/定期⾃动执⾏。可⽤来做⾃动任务、提醒⽣成等功能。
4. 客户端调⽤
在uniapp的环境下可使⽤uniCloud.callFunction()直接调⽤。
也可将云函数URL化,才有普通http⽅法进⾏调⽤。
5. 注意事项
云函数第⼀次调⽤时是冷启动,耗时相对较长(可单独优化)。
云函数中涉及本地⽂件存储的操作需通过云存储⽅案实现(因为云服务环境为弹性调配的)。
云函数中的时区是UTC+0,⾮UTC+8(北京时间)。
三、了解云数据库
在云端使⽤json格式的⽂档型⾮关系型数据库,使⽤MongoDB语法。
如果你未使⽤过这⾥数据库可以先去了解⼀下和原来的关系型数据库的概念。
单条记录的数据格式如下:
{"name":"张三","tel":"139********"}
传统数据库中的表在⾮关系型数据库中叫做集合。
1. 操作数据的2种⽅式
直接在云函数中使⽤传统的MongoDB的API操作云数据库。
客户端直接使⽤clientDB操作云数据库,⽆需单独的云函数。
2. 怎么建集合
可以登录uniCloud web控制台,进⼊服务空间进⾏集合的创建。
创建完成后可以⽣成db_init.json⽂件,⽅便下次数据的初始化。
每个集合包含以下三个部分:
1. data:数据
2. index:索引(提⾼查询效率)
3. schema:格式定义(主要⽤来搭配clientDB使⽤)
3. 数据导⼊导出
集合结构可以是db_init.json的⽅式导出或初始化。
数据导⼊导出,仅阿⾥云⽀持。
数据库备份或恢复,仅腾讯云⽀持。
4. 注意事项
可以使⽤其他数据库,但不推荐这样做;因为云函数和云数据库的环境是再⼀起的,延迟更低。
集合默认⾃带_id字段,不可删除;修改操作时也不允许修改_id字段的值。
5. 扩展资源
是⼀套开放的数据表设计规范,包括了表名、字段等schema定义以及初始数据。
四、了解云存储
云端⽂件存储和提供cdn服务(免费)。
如,将你的⽰例Demo安装包传上去,获取到下载链接转为⼆维码,就可以直接在社区进⾏分享了。
1. 上传⽂件的3种⽅式
1. 通过web控制台,拖拽⽂件上传。
2. 通过客户端API上传。
3. 通过云函数上传。
2. 数据处理(仅阿⾥云⽀持)
图⽚处理(缩放、剪裁、旋转、⽔印等)
适配截帧(截取适配⾸帧)
3. 数据权限(仅腾讯云⽀持)
可控制⽂件的读写相关权限。
4. 注意事项
阿⾥云单⽂件⼤⼩限制为100M,腾讯云单⽂件最⼤为5G。
五、前端⽹页托管
后端可以使⽤云函数+云数据库+云存储解决了,前端的页⾯相关资源也可以直接上传到⽹页托管模块中;真正实现⽆需⾃购服务器即可完成苹果/安卓客户端/⼩程序端和门户⽹站。
使⽤上⽐较简单直接将前端⽂件上传就可以了,另可绑定⾃⼰的域名,使⽤域名进⾏访问。
注意事项
仅⽀持html、CSS、JavaScript、字体、图⽚、⾳视频、json等⽂件。
免费阿⾥云前端⽹页部署限制为最⼤存储空间⽤量2GB。
免费阿⾥云单⽂件最⼤限制为50MB。
付费腾讯云可根据需求进⾏购买。
这⼀套组合拳打下来,可以⼀个⼈完成⼀套⼩项⽬的全部⼯作了;赶快上⼿试试吧。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论