乐趣区

关于android:华为云函数中使用云数据库的JavaScript-SDK基础入门

背景介绍

应用云数据库 Server 端的 SDK,此处我以华为提供的官网 Demo 为例,他们的 Demo 也曾经开源放在了 GitHub 上,大家须要的能够自行下载。

https://github.com/AppGallery…

下载完 Demo 的我的项目代码后,还须要依照以下步骤操作:

后期在调研华为云函数服务的时候,发现能够在云函数中配置云数据库的触发器,能够通过云数据库的插入删除批改等事件,用来触发云函数中代码的执行。当初华为 AGC 的云数据库服务全网公布了,并且还提供了 Server 端的 JavaScript SDK,刚好能够运行在云函数反对的 Node.js 环境中。话不多说,先来尝试一下如何在云函数中应用云数据库提供的 JavaScript SDK,进行最简略的数据的插入和查问吧。

开明服务

这里波及开明两个服务:

首先须要应用华为账号登录 AGC 网站,依照以下步骤进行操作:

1. 开明云函数服务

在 AGC 内抉择 “ 我的我的项目 ”–> 抉择对应的我的项目 ->” 构建 ”->” 云函数 ”,界面上点击 “ 立刻开明 ”,开明当前点击右侧的创立函数即可。

2. 开明云数据库服务

在 AGC 内抉择 “ 我的我的项目 ”–> 抉择对应的我的项目 ->” 构建 ”->” 云数据库 ”,界面上点击“立刻开明”,开明当前,还须要创立对应的对象类型和存储区。此处对应类型和存储区的创立,我都是依照数据库文档中的应用入门来创立的。

包含创立一个 BookInfo 的对象类型,还有一个 QuickStartDemo 的存储区。

云数据库 JavaScript 代码开发

应用云数据库 Server 端的 SDK,此处我以华为提供的官网 Demo 为例,他们的 Demo 也曾经开源放在了 GitHub 上,大家须要的能够自行下载。

https://github.com/AppGallery…

下载完 Demo 的我的项目代码后,还须要依照以下步骤操作:

1. 导出对象类型文件

在云数据库的界面中,对曾经创立的对象类型 BookInfo,导出成 js 的 ServerSDK 的格局,将其放到 demo 的 model 目录下。

2. 下载认证凭据。

AGC 的界面中,抉择我的项目设置,在 ServerSDK 页签下,点击“下载认证凭据”进行下载,并且同样放到 demo 的 model 目录下。

3、批改 credentialPath 门路。

因为我的认证凭据下载当前放在 model 目录下,因而还须要同步批改代码中 credentialPath 门路,在 CloudDBZoneWrapper.js 文件中,批改初始化的代码,具体如下:

(留神对于云函数环境,获取门路下的文件,要应用_dirname 办法)

let api_client_name = "agc-apiclient-testDB.json";

let path = require('path');

let api_client_path = path.join(__dirname,api_client_name);

agconnect.AGCClient.initialize(agconnect.CredentialParser.toCredential(api_client_path));

4. 配置函数入口。

我这没有应用示例代码中默认的 Start.js 的接口,而是本人创立了一个 inde.js 的文件作为函数的入口,对应的代码如下

const CloudDBZoneWrapper = require("./model/CloudDBZoneWrapper.js");

let myHandler = async function(event, context, callback, logger) {logger.info(JSON.stringify(event));

logger.info("event start");

const cloudDBZoneWrapper = new CloudDBZoneWrapper();

const bookInfo = cloudDBZoneWrapper.getSingleBook();

// upsert a list of books

await cloudDBZoneWrapper.upsertBookInfos(bookInfo);

let result = {"message":"Run Success"}

callback(result);

}

module.exports.myHandler = myHandler;

打包上传与配置触发器

1. 如需将本地我的项目运行到云函数中,须要将我的项目整体打包上传,而后应用事件进行测试。留神函数入口须要在根目录下

2、在 AGC 的云函数界面,进行文件的上传,并且留神函数入口须要配置为 index.myHandler。

3、配置对应的 CloudDB 触发器,此时须要配置 CLoudDB 中,对应的存储区和对象类型。

4、配置实现后,点击保留

测试函数成果

1、在函数界面,抉择对应的测试页签。

2、依据云函数的编程模型文档,配置相应的 CloudDB 触发器触发事件。

https://developer.huawei.com/…

3、比方我要配置对应的插入事件,对应的参数如下


{

"records": [{

"before": null,

"after": {

"id": "11111",

"bookName": "user1"

}

}],

"objectTypeName": "BookInfo",

"naturalStoreName": "QuickStartDemo"

}

4. 最终的函数成果

参考链接:

华为 AppGallery Connect 云函数服务业务介绍:
https://developer.huawei.com/…

云函数 – 创立函数 文档阐明 编程模型文档阐明
https://developer.huawei.com/…

云数据库 JavaScript Server SDK 文档开发指南:
https://developer.huawei.com/…

更多精彩内容,请见华为开发者官方论坛→https://developer.huawei.com/…

退出移动版