@aws- sdk/ 客户端键位
说明
JavaScript Keyspaces 客户端的 AWS SDK 为 Node.js , 浏览器和 React Introduct .
Amazon Keyspaces(指Apache Cassandra)是一种可伸缩,可大量取用,并管理Apache Cassandra兼容的数据库服务. Amazon Keyspaces使得在Amazon Web Services Cloud中方便地迁移,运行并缩放出Cassandra的工作量. 只要在亚马逊网络服务管理控制台或几行代码上点击几下,就可以在亚马逊密钥空间创建密钥空间和表格,而无需部署任何基础设施或安装软件.
除了通过开源 Cassandra 驱动程序支持 Cassandra Query Language (CQL) 请求,Amazon Keyspaces 支持数据定义语言(DDL)操作,使用 Amazon Web Services SDK 和 CLI 管理密钥空间和表格,以及 CloudFormation 和 Terraform 等基础设施和代码(IaC)服务和工具. 这个API参考详细描述了支持的DDL操作.
所有支持的 CQL API 列表参见 支持 Amazon Keyspaces 中的 Cassandra API 、 操作和数据类型 输入 亚马逊密钥空间开发者指南。 。 。 .
要学习如何用 CloudTrail 记录 Amazon 键空间 API 动作,请参见 CloudTrail 中的 Amazon 密钥空间信息 输入 亚马逊密钥空间开发者指南。 。 。 .
有关亚马逊网络服务API的更多信息,例如如何执行重试逻辑或者如何签署亚马逊网络服务API请求,请参见 亚马逊网络服务 APIs 输入 一般参考。 。 。 .
安装
要安装此软件包, 请使用您最喜欢的软件包管理器的 CLI :
npm install @aws-sdk/client-keyspacesyarn add @aws-sdk/client-keyspacespnpm add @aws-sdk/client-keyspaces
开始
导入
AWS SDK由客户端和命令进行调制.
要发送请求,只需导入 KeyspacesClient 财务报告和审定财务报表
例如,您需要的命令 ListKeyspacesCommand数字 :
// ES5 example
const { KeyspacesClient, ListKeyspacesCommand } = require("@aws-sdk/client-keyspaces");
// ES6+ example
import { KeyspacesClient, ListKeyspacesCommand } from "@aws-sdk/client-keyspaces";
使用量
发出请求:
- 以配置(如证书,区域)为客户端提供证据.
- 见 文件/中心 用于配置细节.
- 见 @aws- sdk/ 配置 附加选项.
- 以输入参数证明命令 .
- 打电话
send操作客户端,以输入方式提供命令对象.
const client = new KeyspacesClient({ region: "REGION" });
const params = { /** input parameters */ };
const command = new ListKeyspacesCommand(params);
支持的信件协议
这个客户端支持多个协议.
此客户端的默认值是 AWS JSON (RPC) 1.0。 。 。 .
我们根据对 javaScript中此协议格式的性能特征. 你不需要改变它, 但您可以选择这样做,例如支持现有的整合或测试. 选择非默认协议更改格式 ,但不影响您如何与网络交互 使用 JavaScript 对象的客户端.
安装 @aws-sdk/config 软件包以访问其他协议.
见 AWS 议定书 更多信息.
AWS JSON (RPC) 1.0
本协议使用JSON有效载荷.
import { AwsJson1_0Protocol } from "@aws-sdk/config/protocol";
const client = new KeyspacesClient({
protocol: AwsJson1_0Protocol
});
Smithy RPC v2 CBOR 游戏
本协议使用CBOR有效载荷.
import { AwsSmithyRpcV2CborProtocol } from "@aws-sdk/config/protocol";
const client = new KeyspacesClient({
protocol: AwsSmithyRpcV2CborProtocol
});
自动/等待
我们建议使用 等待时 运算符等待通过发送操作返回的承诺如下:
// async/await.
try {
const data = await client.send(command);
// process data.
} catch (error) {
// error handling.
} finally {
// finally.
}
承诺
您还可以使用 承诺连锁。 。 。 .
client
.send(command)
.then((data) => {
// process data.
})
.catch((error) => {
// error handling.
})
.finally(() => {
// finally.
});
合并客户端
归集客户端类别从同套件中导出,但没有"Client"后缀.
Keyspaces 扩展 KeyspacesClient 并额外支持所有操作,服务员, 和活人作为方法.
这种风格可能从JavaScript v2的AWS SDK中为您所熟悉.
如果你正在捆绑 AWS SDK, 我们建议只使用赤骨客户端(KeyspacesClient) (中文(简体) ).
更多详情见博客文章:
javaScript 的 AWS SDK 模块包。 。 。 .
import { Keyspaces } from "@aws-sdk/client-keyspaces";
const client = new Keyspaces({ region: "REGION" });
// async/await.
try {
const data = await client.listKeyspaces(params);
// process data.
} catch (error) {
// error handling.
}
// Promises.
client
.listKeyspaces(params)
.then((data) => {
// process data.
})
.catch((error) => {
// error handling.
});
// callbacks (not recommended).
client.listKeyspaces(params, (err, data) => {
// process err and data.
});
解决问题
当服务返回例外时,错误将包括例外信息, 以及响应元数据(如请求编号).
try {
const data = await client.send(command);
// process data.
} catch (error) {
const { requestId, cfId, extendedRequestId } = error.$metadata;
console.log({ requestId, cfId, extendedRequestId });
/**
* The keys within exceptions are also parsed.
* You can access them by specifying exception names:
* if (error.name === 'SomeServiceException') {
* const value = error.specialKeyInException;
* }
*/
}
另见 文档/错误。 。 。 .
获取帮助
请利用这些社区资源获得帮助. 我们使用 GitHub 问题来跟踪错误和特性请求,但处理它们的带宽有限.
- 访问 开发者指南 或者说 API 参考。 。 。 .
- 看看贴有标签的博客文章
aws-sdk-jsaWS 开发者博客. - 问个问题 叠叠流 并贴上标签
aws-sdk-js。 。 。 . - 加入 AWS JavaScript 社区 发光。 。 。 .
- 如果你发现你发现了一个虫子,请 打开一个问题。 。 。 .
为了测试您在Node.js中通用的JavaScript代码,浏览器和反应本地环境, 拜访我们 代码样本 repo。 。 。 .
捐款
此客户端代码是自动生成的. 任何修改在下次修改时都会被覆盖 @aws-sdk/client-keyspaces 软件包正在更新.
为了帮助客户,你可以检查我们 生成客户端脚本。 。 。 .
许可证
此 SDK 分布于 Apache 许可证,2.0版本, (中文(简体) ), 更多信息见LICENSE.