@dynatrace-sdk/client-state

中文文档
1.11.0发布于 2026/09/25Apache-2.0TypeScriptESM + CJS近 30 天下载 1.5万

为应用程序提供密钥-值存储,以便应用程序开发人员能够坚持下去,并在其应用程序背景下获得小块状态.

中文使用文档
文档目录28 节
  1. 安装
  2. 获得帮助
  3. 许可证
  4. 状态
  5. 删除辅助状态
  6. 删除app状态
  7. 删除用户助理状态
  8. 删除 UserApp 状态
  9. 获取辅助状态
  10. 获取辅助状态
  11. 获取用户助理状态
  12. 获取用户辅助状态
  13. 设置
  14. set 用户辅助状态
  15. 类型
  16. 状态
  17. 应用状态
  18. 错误
  19. 错误细节
  20. 答错
  21. 列表辅助状态
  22. 列表用户辅助状态
  23. 修改信息
  24. 持久性状态
  25. 用户助理状态
  26. 用户应用状态
  27. 数字
  28. 细节错误 :

@ dynatrace- sdk/ 客户端状态

npm License

概览

为应用程序提供密钥值存储,以便应用程序开发人员能够持续并获得小块 在其应用的语境中.

国家可以被存储在一个app(=app states)的上下文中,也可以被存储在一个app和用户的上下文中(=用户app states).

  • 每个应用程序存储的国家可以被每个应用程序的用户读取.
  • 每个应用程序和用户存储的国家只能由最初设定该状态的用户阅读和更新. 请访问 Dynatrace 开发者 以了解更多应用程序状态和用户应用程序状态.

安装

npm install @dynatrace-sdk/client-state

获得帮助

许可证

此 SDK 分布于 Apache 许可证,2.0版本,更多信息见LICENSE.

API 参考

最新版本SDK的API 完整参考文件也可在 Dynatrace 开发者。 。 。 .

状态

import { stateClient } from '@dynatrace-sdk/client-state';

删除辅助状态

状态Client.deleteApp State(配置):承诺<void>

删除应用程序状态

所需范围 : 状态: app- states: 删除

参数

名称类型说明
配置. key*必须字符串指定状态的密钥

示例 some-key

掷出

错误类型错误消息
未经授权未经授权
禁止禁止
无果未找到
内务人员错误内部服务器出错
常规错误意外错误
代码示例
import { stateClient } from "@dynatrace-sdk/client-state";

const data = await stateClient.deleteAppState({
  key: "some-key",
});

删除app状态

stateClient.deleteApp States(配置):承诺<void>

删除所有应用程序状态

所需范围 : 状态: app- states: 删除

删除应用程序的所有应用程序状态,以将应用程序重置为干净状态.

掷出

错误类型错误消息
常规错误意外错误
代码示例
import { stateClient } from "@dynatrace-sdk/client-state";

const data = await stateClient.deleteAppStates();

删除用户助理状态

stateClient.deleteUserApp State(配置):承诺<void>

删除用户应用程序状态

所需范围 : 状态: 用户- 应用状态: 删除

参数

名称类型说明
配置. key*必须字符串指定状态的密钥

示例 some-key

掷出

错误类型错误消息
未经授权未经授权
禁止禁止
无果未找到
内务人员错误内部服务器出错
常规错误意外错误
代码示例
import { stateClient } from "@dynatrace-sdk/client-state";

const data = await stateClient.deleteUserAppState({
  key: "some-key",
});

删除 UserApp 状态

状态Client.deleteUserApp States(配置):承诺<void>

删除所有用户应用程序状态

所需范围 : 状态: 用户- 应用状态: 删除

删除调用用户和应用程序的所有用户应用程序状态 .

掷出

错误类型错误消息
常规错误意外错误
代码示例
import { stateClient } from "@dynatrace-sdk/client-state";

const data = await stateClient.deleteUserAppStates();

获取辅助状态

状态Client.getApp State(配置):承诺<状态> 翻译:

获取应用程序状态

所需范围 : 状态: app- states: read

参数

名称类型说明
配置. key*必须字符串指定状态的密钥

示例 some-key

回返

返回类型状态代码说明
状态200个应用程序状态

掷出

错误类型错误消息
未经授权未经授权
禁止禁止
无果未找到
内务人员错误内部服务器出错
常规错误意外错误
代码示例
import { stateClient } from "@dynatrace-sdk/client-state";

const data = await stateClient.getAppState({
  key: "some-key",
});

获取辅助状态

stateClient.getApp States(配置):承诺 <应用状态> 翻译:

列表应用程序状态

所需范围 : 状态: app- states: read

列出应用状态. 默认情况下,仅提供财产 键 每个州。 使用 加字段数 参数以包含更多字段和 过滤器 参数缩小返回状态.

参数

名称类型说明
配置. 添加字段字符串提供一个逗号分隔列表,列出要包含在响应中的其他属性.

示例 value,modificationInfo
配置. filter字符串

过滤返回资源集的过滤参数 如果此参数被省略,则不应用过滤并返回所有状态.

通过字符串类型参数过滤 key, (中文(简体) ), modificationInfo.lastModifiedBy 当使用一个运算符时 contains, (中文(简体) ), starts-with 财务报告和审定财务报表 ends-with 实值 大小写不敏感。 。 。 .

使用运算符时 =财务报告和审定财务报表 !=,过滤是 区分大小写。 。 。 .

以下字段为法律过滤参数-任何其他字段名称将产生HTTP 400响应:

  • key,支持的运算符 : =, (中文(简体) ), !=, (中文(简体) ), contains, (中文(简体) ), starts-with, (中文(简体) ), ends-with数字 :

  • modificationInfo.lastModifiedTime,支持的运算符 : =, (中文(简体) ), !=, (中文(简体) ), <, (中文(简体) ), <=, (中文(简体) ), >, (中文(简体) ), >=

  • modificationInfo.lastModifiedBy,支持的运算符 : =, (中文(简体) ), !=, (中文(简体) ), contains, (中文(简体) ), starts-with, (中文(简体) ), ends-with

  • validUntilTime,支持的运算符 : =, (中文(简体) ), !=, (中文(简体) ), <, (中文(简体) ), <=, (中文(简体) ), >, (中文(简体) ), >=

以下制约因素适用:

  • 字段名称是 区分大小写。 。 。 .

  • 条件可以通过运算符连接 and 财务报告和审定财务报表 or。一个单一条件可以通过 not。 。 。 .

  • 字符串 必须 页:1 单引号例如. key contains 'my-string'

  • 字符串内的单引子必须用回击来逃避:例如. key starts-with 'it\'s a string'

  • 最大筑巢深度(通过括号)为2.

  • 最大长度为256个字符.

实例:

  • key starts-with 'game-'

  • modificationInfo.lastModifiedTime >= '2022-07-01T00:10:05.000Z' and not (key contains 'new')



示例 modificationInfo.lastModifiedTime >= '2022-02-06T11:00:00Z'

回返

返回类型状态代码说明
应用状态200个应用程序列表状态

掷出

错误类型错误消息
未经授权未经授权
禁止禁止
内务人员错误内部服务器出错
常规错误意外错误
代码示例
import { stateClient } from "@dynatrace-sdk/client-state";

const data = await stateClient.getAppStates();

获取用户助理状态

状态Client.getUserApp State(配置):承诺 <用户助理状态> 翻译:

获取用户应用程序状态

所需范围 : 状态: 用户- 应用状态: 已读

参数

名称类型说明
配置. key*必须字符串指定状态的密钥

示例 some-key

回返

返回类型状态代码说明
用户助理状态200个用户应用程序状态

掷出

错误类型错误消息
未经授权未经授权
禁止禁止
无果未找到
内务人员错误内部服务器出错
常规错误意外错误
代码示例
import { stateClient } from "@dynatrace-sdk/client-state";

const data = await stateClient.getUserAppState({
  key: "some-key",
});

获取用户辅助状态

stateClient.getUserApp States(配置):承诺 <用户应用状态> 翻译:

列出用户应用程序状态

所需范围 : 状态: 用户- 应用状态: 已读

列出用户应用程序状态. 默认情况下,仅提供财产 键 每个州。 使用 加字段数 参数以包含更多字段和 过滤器 缩小返回状态的参数

参数

名称类型说明
配置. 添加字段字符串提供一个逗号分隔列表,列出要包含在响应中的其他属性.

示例 value,modificationInfo
配置. filter字符串

过滤返回资源集的过滤参数 如果此参数被省略,则不应用过滤并返回所有状态.

通过字符串类型参数过滤 key, (中文(简体) ), modificationInfo.lastModifiedBy 当使用一个运算符时 contains, (中文(简体) ), starts-with 财务报告和审定财务报表 ends-with 实值 大小写不敏感。 。 。 .

使用运算符时 =财务报告和审定财务报表 !=,过滤是 区分大小写。 。 。 .

以下字段为法律过滤参数-任何其他字段名称将产生HTTP 400响应:

  • key,支持的运算符 : =, (中文(简体) ), !=, (中文(简体) ), contains, (中文(简体) ), starts-with, (中文(简体) ), ends-with数字 :

  • modificationInfo.lastModifiedTime,支持的运算符 : =, (中文(简体) ), !=, (中文(简体) ), <, (中文(简体) ), <=, (中文(简体) ), >, (中文(简体) ), >=

  • modificationInfo.lastModifiedBy,支持的运算符 : =, (中文(简体) ), !=, (中文(简体) ), contains, (中文(简体) ), starts-with, (中文(简体) ), ends-with

  • validUntilTime,支持的运算符 : =, (中文(简体) ), !=, (中文(简体) ), <, (中文(简体) ), <=, (中文(简体) ), >, (中文(简体) ), >=

以下制约因素适用:

  • 字段名称是 区分大小写。 。 。 .

  • 条件可以通过运算符连接 and 财务报告和审定财务报表 or。一个单一条件可以通过 not。 。 。 .

  • 字符串 必须 页:1 单引号例如. key contains 'my-string'

  • 字符串内的单引子必须用回击来逃避:例如. key starts-with 'it\'s a string'

  • 最大筑巢深度(通过括号)为2.

  • 最大长度为256个字符.

实例:

  • key starts-with 'game-'

  • modificationInfo.lastModifiedTime >= '2022-07-01T00:10:05.000Z' and not (key contains 'new')



示例 modificationInfo.lastModifiedTime >= '2022-02-06T11:00:00Z'

回返

返回类型状态代码说明
用户应用状态200个用户应用程序列表状态

掷出

错误类型错误消息
未经授权未经授权
禁止禁止
内务人员错误内部服务器出错
常规错误意外错误
代码示例
import { stateClient } from "@dynatrace-sdk/client-state";

const data = await stateClient.getUserAppStates();

设置

stateClient.setApp State(配置):承诺<已生效>

更新应用程序状态

所需范围 : 状态: app- states: write

更新 交叉用户 给定密钥的应用状态 。 要注意其他用户能够读取该值. 使用用户扫描的用户应用状态只为认证用户存储值.

某些限制 当应用程序状态更新时应用.

参数

名称类型说明
配置. 身体*必须状态
配置. key*必须字符串指定状态的密钥

示例 some-key

回返

返回类型状态代码说明
无效200个

掷出

错误类型错误消息
超常状态本应用的应用程序组合大小上限
未经授权未经授权
禁止禁止
内务人员错误内部服务器出错
常规错误意外错误
代码示例
import { stateClient } from "@dynatrace-sdk/client-state";

const data = await stateClient.setAppState({
  key: "some-key",
  body: { value: "some-state", validUntilTime: "now+2d" },
});

set 用户辅助状态

状态 Client. setUserApp State( 配置): 保证<void>

更新用户应用程序状态

所需范围 : 状态: 用户- 应用程序状态: write

更新给定密钥和呼叫用户的用户特定应用程序状态.

某些限制 当用户应用程序状态更新时应用.

参数

名称类型说明
配置. 身体*必须用户助理状态
配置. key*必须字符串指定状态的密钥

示例 some-key

回返

返回类型状态代码说明
无效200个

掷出

错误类型错误消息
UserAppStateLimits 超过为这个用户和应用程序存储的用户应用状态超过限制
未经授权未经授权
禁止禁止
内务人员错误内部服务器出错
常规错误意外错误
代码示例
import { stateClient } from "@dynatrace-sdk/client-state";

const data = await stateClient.setUserAppState({
  key: "some-key",
  body: { value: "some-state", validUntilTime: "now+2d" },
});

类型

状态

名称类型说明
修改 资讯修改信息
无效的 Until Time无效 字符串指定状态持续的日期。 允许的值是从现在+1m到现在+90d! 返回的有效UntilTimes 总是ISO 8601格式的字符串

示例 now+2d
价值*必须字符串

应用状态

类型: 阵列 <列表辅助状态> 翻译:

错误

名称类型
代码*必须编号
细节错误细节
消息*必须字符串

错误细节

名称类型说明
错误代码"App State OverSizeLimitExced""AppSizeLimitExced""UserAppSationLimitExced""UserAppSationLimitExced""UserAppSizeLimitPerUserExced" 互联网档案馆的存檔,存档日期2013-12-22

显示请求失败原因的错误代码

  • AppStateOverallSizeLimitExceeded - 本应用程序综合大小的总尺寸限制已超过
  • AppStateSizeLimitExceeded - 应用程序状态值超过了单一应用程序状态的大小限制
  • UserAppStateSizeLimitPerUserExceeded - 一个应用程序的用户应用程序的大小状态值超过限制
  • UserAppStateSizeLimitExceeded - 说吧 已贬值 用户app状态内容超过了单一用户app状态的大小限制. 不再由API返回.
  • UserAppStateCountLimitExceeded - 说吧 已贬值 此用户和app的最大用户应用状态被突破 。 不再由API返回.
失踪矩阵 <字符串> 翻译:IAM 允许用户缺失 。 在403个答复中,如果该信使具有规定的范围,但用户的IAM政策没有给予许可.
缺少缩写矩阵 <字符串> 翻译:OAuth 显示无记名标志不见了 介绍403项因象征性范围不足而做出的答复。 将列出的范围添加到符号中以解出此错误 .

答错

名称类型
错误*必须错误

列表辅助状态

名称类型说明
键*必须字符串
修改 资讯修改信息
无效的 Until Time无效 字符串指定状态持续的日期。 允许的值是从现在+1m到现在+90d! 返回的有效UntilTimes 总是ISO 8601格式的字符串

示例 now+2d
价值字符串

列表用户辅助状态

名称类型说明
键*必须字符串
修改 资讯修改信息
无效的 Until Time无效 字符串指定状态持续的日期。 允许的值是从现在+1m到现在+90d! 返回的有效UntilTimes 总是ISO 8601格式的字符串

示例 now+2d
价值字符串

修改信息

名称类型
上次修改By*必须字符串
上次修改的时间*必须日期

持久性状态

名称类型说明
修改 资讯修改信息
无效的 Until Time无效 字符串指定状态持续的日期。 允许的值是从现在+1m到现在+90d! 返回的有效UntilTimes 总是ISO 8601格式的字符串

示例 now+2d
价值字符串

用户助理状态

名称类型说明
修改 资讯修改信息
无效的 Until Time无效 字符串指定状态持续的日期。 允许的值是从现在+1m到现在+90d! 返回的有效UntilTimes 总是ISO 8601格式的字符串

示例 now+2d
价值*必须字符串

用户应用状态

类型: 阵列 <列表用户辅助状态> 翻译:

数字

细节错误 :

⚠️ 折旧 使用字面值.

显示请求失败原因的错误代码

  • AppStateOverallSizeLimitExceeded - 本应用程序综合大小的总尺寸限制已超过
  • AppStateSizeLimitExceeded - 应用程序状态值超过了单一应用程序状态的大小限制
  • UserAppStateSizeLimitPerUserExceeded - 一个应用程序的用户应用程序的大小状态值超过限制
  • UserAppStateSizeLimitExceeded - 说吧 已贬值 用户app状态内容超过了单一用户app状态的大小限制. 不再由API返回.
  • UserAppStateCountLimitExceeded - 说吧 已贬值 此用户和app的最大用户应用状态被突破 。 不再由API返回.

Enum 键

AppStateOverallSizeLimitExceeded | AppStateSizeLimitExceeded | UserAppStateCountLimitExceeded | UserAppStateSizeLimitExceeded | UserAppStateSizeLimitPerUserExceeded

版本与发布记录

@dynatrace-sdk/client-state 共发布 29 个版本,首次发布于 2023/04/03;过去 12 个月发布了 2 个版本。

版本发布日期距今
1.11.0latest2026/09/251 个月前
1.9.32026/06/254 个月前
1.9.22025/09/241.1 年前
1.9.12025/07/151.3 年前
1.8.32025/07/011.4 年前
1.8.22025/06/171.4 年前

关于 @dynatrace-sdk/client-state 的常见问题

@dynatrace-sdk/client-state 是什么?

为应用程序提供密钥-值存储,以便应用程序开发人员能够坚持下去,并在其应用程序背景下获得小块状态.

如何安装 @dynatrace-sdk/client-state?

在项目目录运行 npm install @dynatrace-sdk/client-state,或使用 pnpm add / yarn add / bun add。

@dynatrace-sdk/client-state 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@dynatrace-sdk/client-state 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@dynatrace-sdk/client-state 可以商用吗?

@dynatrace-sdk/client-state 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@dynatrace-sdk/client-state 的下载量有多少?

根据 npm 官方下载统计,@dynatrace-sdk/client-state 在 2026/10/13 – 2026/11/11 这 30 天内被下载 15,120 次,日均约 504 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@dynatrace-sdk/client-state 还在维护吗?

最新版本 1.11.0 发布于 2026/09/25(1 个月前);至今共发布 29 个版本,其中过去 12 个月发布了 2 个;首次发布于 2023/04/03。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。