如何在小游戏制作工具中使用云数据库持久保存用户的数据

简介: 前言这可能是你能从网上找到的唯一一篇在微信小游戏制作工具中使用云数据库的教程了。通过这篇教程你将能学会如何在小游戏制作工具中使用云数据库添加,更新和查询玩家的数据。使用云数据库保存玩家数据的好处是,当你每次更新小游戏时,玩家都能够获取到之前保存的游戏数据,继续进行游戏。

上一节我们讲了如何在小游戏制作工具中使用云函数,这一节我们继续拓展一下,通过使用云函数调用数据库来实现玩家数据的持久存储。


一个游戏中包含各种类型的数据,有些数据不需要持久存储,如玩家的偏好设置,选择的背景音乐,主题等等,这些数据我们可以通过使用缓存插件来将数据存储在本地(有关缓存插件的使用方法,可以参考这篇文章),但是有些数据就需要持久存储,例如玩家的获得的最高分,以及玩家闯过的关卡等。


对于微信小游戏来讲,缓存在本地的数据会在游戏更新时被清除掉,如果每次更新游戏,玩家之前的游戏数据都被抹除,都需要重新玩的话,体验非常的不好。


所以今天我们就来讲一下云开发中的数据库的使用,通过使用云数据我们可以持久的存储玩家的数据,这样每次游戏更新时,玩家都可以从云数据库中获取到自己的游戏数据,继续进行游戏了。


本教程的学习前提需要你已经了解如何在小游戏制作工具中使用云函数,如果不了解的话请移步这里学习。


首先,我们登陆云开发的后台,选择数据库新建一个集合,命名为playerdata,用于存储玩家的数据。

image.png

接下来我们需要了解几个重要的概念,一个是集合,一个是集合中的数据 id,可以把集合想象成一个大筐子,你可以往这个筐子里装任何的东西,对于装进去的每一样东西我们都需要给它打一个标识,并把这个标识记录下来,便于之后的查找。当你想要在这筐子里找到某一件东西时,最好的方式就是先知道这个东西的标识,然后去看一下在记录中有没有这个标识,如果有的话那么这个东西就一定在筐子里,你也就一定能够通过标识找到它。


数据id就是标识,这个标识最好是唯一的,即通过一个标识只能找到唯一的一样东西(数据)。如果每一位玩家都有一个唯一的标识的话,我们就可以通过这个唯一的标识来添加或者查找这位玩家的数据了。


这个唯一的标识,微信已经为我们提供了,叫做OpenlD(用户唯一标识),对于微信小游戏来讲,每一位玩家都会有一个唯一的 OpenlD,只要我们获取到OpenlD,就可以通过它来记录或者查找玩家的数据了。

说一下具体的实现思路:首先我们在微信小游戏制作工具中使用微信登陆积木获取到登陆凭证,接着将登陆凭证传递给要调用的云函数,在云函数中对登陆凭证进行校验,获得唯一的标识 openid,最后再将openid回传到小游戏制作工具中。

image.png

接下来我们就实现一下这个完整的过程。


首先,在小游戏制作工具中布置一个测试场景,用于显示各种操作的返回结果。

image.png

接着在“获取唯一标识”的文本上增加如下的积木块

image.png

使用“微信登陆”积木块获得登陆凭证,然后将登陆凭证作为参数传递给云函数,如果云调用成功返回了,那么就将用户的唯一标识openid缓存在本地。这样只要本地有缓存的openid,就不需要每次都去调用云函数获取了。


接下来,我们看一下云函数的实现。新建一个云函数,命名为"login"

image.png

目录
打赏
0
0
0
0
15
分享
相关文章
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
50 12
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
【YashanDB知识库】python驱动查询gbk字符集崖山数据库CLOB字段,数据被驱动截断
【YashanDB知识库】python驱动查询gbk字符集崖山数据库CLOB字段,数据被驱动截断
Navicat Premium 17 最新版下载与配置:5分钟完成企业级数据库工具部署
Navicat Premium 17 是一款支持多种主流数据库(如 MySQL、Oracle、PostgreSQL 等)的多数据库管理工具,提供可视化数据建模、SQL 编辑和数据同步等功能。试用版提供 14 天全功能体验,商业版支持跨平台使用。安装环境要求 Windows 10/11 或 macOS 12.0+,最低配置为 4GB 内存。下载并解压安装包后,按步骤启动安装程序、接受许可协议、自定义安装路径并完成安装。首次运行时需激活许可证并配置数据库连接。常见问题包括无法写入注册表、试用期续费及连接数据库权限问题。高级功能涵盖 SSH 通道加速、自动化任务调度和性能调优建议。
111 19
有哪些方法可以验证用户输入数据的格式是否符合数据库的要求?
有哪些方法可以验证用户输入数据的格式是否符合数据库的要求?
175 75
循序渐进丨MogDB 中 gs_dump 数据库导出工具源码概览
通过这种循序渐进的方式,您可以深入理解 `gs_dump` 的实现,并根据需要进行定制和优化。这不仅有助于提升数据库管理的效率,还能为数据迁移和备份提供可靠的保障。
36 6
阿里云云数据仓库:助力企业构建智能数据基石的云端利器 。阿里云云数据仓库优势与选型指南
阿里云数据仓库体系基于MaxCompute、AnalyticDB等核心产品,提供弹性敏捷的PB级数据处理能力,支持实时分析与智能决策。其六大优势包括无限弹性伸缩、极致性能表现、智能成本优化、全栈安全体系、生态无缝对接和AI增强分析,助力企业在数字经济时代应对数据爆发式增长的挑战。灵活透明的定价体系和行业实践案例展示了其在证券、新零售、物联网等领域的成功应用,为企业构建智能数据基座提供了清晰路径。
38 6
【YashanDB 知识库】Hive 命令工具 insert 崖山数据库报错
【YashanDB 知识库】Hive 命令工具 insert 崖山数据库报错
【YashanDB 知识库】用 yasldr 配置 Bulkload 模式作单线程迁移 300G 的业务数据到分布式数据库,迁移任务频繁出错
问题描述 详细版本:YashanDB Server Enterprise Edition Release 23.2.4.100 x86_64 6db1237 影响范围: 离线数据迁移场景,影响业务数据入库。 外场将部分 NewCIS 的报表业务放到分布式数据库,验证 SQL 性能水平。 操作系统环境配置: 125G 内存 32C CPU 2T 的 HDD 磁盘 问题出现的步骤/操作: 1、部署崖山分布式数据库 1mm 1cn 3dn 单线启动 yasldr 数据迁移任务,设置 32 线程的 bulk load 模式 2、观察 yasldr.log 是否出现如下错

热门文章

最新文章