最近浏览uniapp官方时发现,新上线的uniCloud,所以特意研究并记录下。

unicloud 是 DCloud 联合阿里云、腾讯云,为开发者提供的基于 serverless 模式和 js 编程的云开发平台。现在阿里和腾讯也分别提供这种云开发方式,只不是unicloud提供的是一种混合兼容的方式。
核心的概念是无需java、php等传统后端服务,可以通过js的云函数去操作数据库。
减少云资源的使用。
下面的例子是使用阿里云提供的相关服务,目前云函数、云数据库等,简单的应用都可以做到免费。目前挺多抗疫的小程序就是通过这个方式实现的。
以下是以unicloud提供的例子结合体验一下。
最终H5地址http://www.leli.fun/#/
(1)下载最新版的hbuilderX,新增项目,选择unicloud模式及hello模板。

(2)创建成功可以看到提示未关联云服务,这里新增对应的云服务选择阿里云。

(3)发现左侧的程序里面cloudfunctions里已经有hello模板里提供的一些默认函数。

可以看到如add文件夹的index.js 里面的这个方法就是一个后端新增方法。
通过db.collection('unicloud-test')操作的就是是数据库的unicloud-test表。
这个云函数方法可以在对应的前端页面调用。而云函数是上传到对应的云服务上。

(4)databse里默认有对应的数据库模板,自带的全部删掉。在unicloud web控制台重新建了几张表。

建完后在database右键下载,也可以看到数据库模板如下。云数据库和本地的模板可以互相转换。

(5)测试云函数,在get文件夹右键上传并运行,可以看到执行查询并返回结果。

(6)在项目名称右键选择发行,进行h5测试hello案例。

发行时可能提示网页托管空间未开启,在web控制台开启。编译后的h5页面上传到托管空间。
Unicloud默认给提供了h5网页的测试域名。这里我配置了自己的域名,将控制台提供的cname地址配置到域名解析服务器的cname方式。


同时需要调整跨域的配置,这里配置的如下。

(7)发布后的效果如下

(8)发布为安卓app,使用最简单的公共测试证书去发布。需要提前配置app图标。

发布好apk后,安装并测试


(9)关于微信小程序、支付宝小程序的演示留待后续。


晕晕大作战
33 声望9 粉丝

hello,world [链接]