小程序云开发--第一天(才接触)

小程序云开发实战

由于小程序本身存储数据的能力有限,所以不可能将大量的数据保存在客户端,而且将数据保存在本地既不安全,也无法与其他小程序用户共享,所以大多数小程序都需要一个服务端,服务端可以用多种技术实现,如 PHP、Node.js、Python、Asp.net、Java EE 等。不管使用哪种技术实现服务端,开发一款小程序都需要至少配备两个程序员,一个是开发小程序的程序员,一个是开发服务端的程序员;而且这两个程序员之间还需要不断沟通,以便确认共同遵循的接口。

开发一款小程序需要两名或更多的程序员参与,一直困扰着很多小的创业公司,因为多雇佣一个人,就会增加很多成本。所以基于这个痛点,很多公司推出了云开发技术,例如 Bmob 就是较早推出云开发的公司,所谓云开发,就是将服务端的功能都封装起来,然后向客户端提供 API 访问这些封装的功能。服务端的主要功能无外乎数据存储、文件上传下载、视频/音频流等功能。这些功能大多开发都不困难,但比较费时,所以将其封装起来供客户端调用是一个非常好的主意。

腾讯最近推出了自己的云开发系统,不过这个云开发系统目前只能用于小程序,而且只提供了如下三种:

  • 云数据库
  • 云存储
  • 云函数

云数据库是指在服务端提供的数据库服务,小程序云提供的数据库属于文档数据库,文档数据库有别于关系型数据库。传统的关系型数据库中可以保存若干个表,每一个表由若干条记录组成。但文档数据库保存的是 JSON 格式的数据,每一个 JSON 文档相当于关系型数据库中的一个表。也就是说,文档数据库保存的是 JSON 文档的集合。非常流行的 MongoDB 就是典型的文档数据库。云数据库个组成部分对应的关系如下表所示。

关系数据库 文档数据库
数据库(DataBase) 数据库(DataBase)
表(table) 集合(collection)
行(row) 记录(record/doc)
列(column) 字段(field)

云存储为小程序提供了远程上传和下载文件的能力。下载可以提供权限管理,小程序可以通过相应的 API 实现文件的上传和下载功能。

云函数就是一段可以运行在服务端的代码,之所以要将部分代码在服务端运行,主要有如下两个原因:

  • 部署多个用户共享,且容易维护的代码
  • 获取敏感信息,如 AppID、OpenID 等

搭建云开发环境

现在让我们来开发第一个与云的小程序,首先应该下载最新版的微信开发者工具,然后在小程序后台获取 AppID。使用云开发功能,必须使用真实的 AppID,不能使用测试用的 AppID。

启动微信开发者工具,新创建一个小程序工程。在创建小程序工程的过程中,需要输入 AppID 和项目名称,然后在最下面的目标列表中选择“建立云开发快速启动模板”选项,如下图所示。

image.png

创建完支持云开发的小程序工程后,工程目录结构和 IDE 主界面如下图所示。当前工程默认带了一些例子(模板中的例子)来帮助理解和开发基于云的小程序。

image.png

如果第一次使用这个 AppID 开发基于云的小程序,应该单击界面上方的“云开发”按钮,会显示如下图所示的页面。

image.png

这是一个开通云服务的页面,单击“开通”按钮,就会开通用于云开发的服务。在开通的过程中会出现如下图所示的确认对话框,单击”确定“按钮进入下一个设置页面。

image.png

这个页面是”新建环境“页面,如下图所示。需要输入“环境名称”,一个任意的字符串。在下面列出了基础版的配置,如数据库存储空空间、云函数数量等。如果想要更多的资源,那以后肯定是要收费的,天下没有免费的午餐。不过这个配置做实验和用户量不是非常大的小程序还是够用的。

image.png

单击“确定”按钮,创建一个环境,然后进入如下图所示的云开发控制台。在这个控制台中可以管理用户、云数据库、云存储、云函数及统计分析,并且会显示相关的信息,如今日 API 调用:

image.png

如果想创建新环境,可以将鼠标放在右侧当前环境 minicloud 上,会弹出如下图所示的菜单,单击”创建新环境“菜单项则会创建一个新的环境,目前每个小程序账号课免费创建两个新环境。

image.png

部署 login 云函数

模板会默认创建一个 login 云函数,用于返回 OpenID(标识当前微信登录用户的 ID),所以在开发基于云的小程序之前,首先要先部署 login 云函数。

选中 login 云函数,在右键菜单中单击“上传并部署”菜单项进行部署,如下图所示。

image.png

成功部署 login 云函数后,回到小程序的主页面,单击“点击获取 openid”按钮,如图所示,则会通过 login 云函数获取 openid。

image.png

备注:如果遇到以下情况,这样操作:cmd命令进入你项目的目录,如:d:/test/demo/cloudfunctions/login(你需要执行的云函数名称/文件夹) 执行 npm install操作,没有安装node.js的安装下啊,

执行npm install操作必须是在你当前项目的云函数目录下执行操作

执行npm install操作必须是在你当前项目的云函数目录下执行操作

执行npm install操作必须是在你当前项目的云函数目录下执行操作

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章