# @aws-lambda-powertools/parameters 中文文档

规范地址：https://npmcn.com/package/%40aws-lambda-powertools/parameters/

版本：2\.36\.0
npm 元数据更新时间：2026-10-06T14:29:15.359Z
中文译文更新时间：2026-11-07T09:35:58.538Z
软件包许可：MIT-0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40aws-lambda-powertools/parameters
原文对照：https://npmcn.com/package/%40aws-lambda-powertools/parameters/?lang=original
项目主页：https://github.com/aws-powertools/powertools-lambda-typescript/tree/main/packages/parameters#readme
源码仓库：https://github.com/aws-powertools/powertools-lambda-typescript

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：622 kB，196 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：1 个
- peer 依赖：@middy/core 4\.x \|\| 5\.x \|\| 6\.x \|\| 7\.x，@aws-sdk/client-ssm \>=3\.x，@aws-sdk/util-dynamodb \>=3\.x，@aws-sdk/client-dynamodb \>=3\.x，@aws-sdk/client-appconfigdata \>=3\.x，@aws-sdk/client-secrets-manager \>=3\.x
- 首次发布：2023-03-20T16:13:11.662Z
- 最新版本发布：2026-10-06T14:29:14.640Z
- 近 30 天下载量：1176158（2026-10-08 至 2026-11-06，npm 官方下载统计）
- 已发布版本数：74（近 12 个月 11 个）

## 中文简介

AWS Lambda (TypeScript) 库的 Powertools 参数包

## 安装

```sh
npm install @aws-lambda-powertools/parameters
```

也可以使用：`pnpm add @aws-lambda-powertools/parameters`、`yarn add @aws-lambda-powertools/parameters`、`bun add @aws-lambda-powertools/parameters`

## README

# AWS Lambda 的动力工具( TypeScript)

用于 AWS Lambda (TypeScript) 的 Powertools 是用于执行无服务器的开发者工具包 [最佳做法和增加开发者的速度](https://docs.aws.amazon.com/powertools/typescript/latest/#features)。 。 。 .

您可以在 TypeScript 和 JavaScript 代码基础中使用软件包.

-   [介绍](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-intro)
-   [使用量](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-usage)
    -   [从 AWS SSM 参数存储获取参数](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-fetching-parameters-from-aws-ssm-parameter-store)
    -   [从亚马逊秘密管理器获取秘密](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-getting-secrets-from-amazon-secrets-manager)
    -   [从 Amazon DynamoDB 获取值](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-retrieving-values-from-amazon-dynamodb)
    -   [从 AWS appConfig 获取配置](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-fetching-configs-from-aws-appconfig)
    -   [从 AWS appConfig 代理获取配置](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-fetching-configs-from-the-aws-appconfig-agent)
-   [贡献](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-contribute)
-   [路线图](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-roadmap)
-   [连接](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-connect)
-   [如何支持 AWS Lambda (TypeScript) 的 Powertools ?](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-how-to-support-powertools-for-aws-lambda-typescript)
    -   [成为参考客户](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-becoming-a-reference-customer)
    -   [分享你的工作](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-sharing-your-work)
    -   [使用 Lambda 层](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-using-lambda-layer)
-   [许可证](https://npmcn.com/package/%40aws-lambda-powertools/parameters/#readme-license)

## 介绍

参数工具提供高级功能,从中获取一个或多个参数值

-   [AWS 系统管理器](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html)
-   [AWS 保密管理器](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html), (中文(简体) ),
-   [AWS 应用程序配置](https://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html), (中文(简体) ),
-   [亚马逊迪纳摩DB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html), (中文(简体) ),
-   或您自己的参数商店.

## 使用量

### 从 AWS SSM 参数存储获取参数

要启动, 请为 JavaScript v3 安装库和相应的 AWS SDK :

```sh
npm install @aws-lambda-powertools/parameters @aws-sdk/client-ssm
```

接下来审查您 AWS Lambda 函数所附带的 IAM 权限,并确保您允许 [详细行动](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#iam-permissions) 在工具文档中.

您可以使用 `getParameter` 高级职务.

```ts
import { getParameter } from '@aws-lambda-powertools/parameters/ssm';

export const handler = async (): Promise<void> => {
  // Retrieve a single parameter
  const parameter = await getParameter('/my/parameter');
  console.log(parameter);
};
```

对于多个参数,您可以使用 `getParameters` 在路径下连续获取所有参数:

```ts
import { getParameters } from '@aws-lambda-powertools/parameters/ssm';

export const handler = async (): Promise<void> => {
  /**
   * Retrieve multiple parameters from a path prefix recursively.
   * This returns an object with the parameter name as key
   */
  const parameters = await getParameters('/my/path/prefix');
  for (const [key, value] of Object.entries(parameters || {})) {
    console.log(`${key}: ${value}`);
  }
};
```

要使用全名获取不同的参数,请使用 `getParametersByName` 函数 :

```ts
import { Transform } from '@aws-lambda-powertools/parameters';
import { getParametersByName } from '@aws-lambda-powertools/parameters/ssm';
import type { SSMGetParametersByNameOptions } from '@aws-lambda-powertools/parameters/ssm/types';

const props: Record<string, SSMGetParametersByNameOptionsInterface> = {
  '/develop/service/commons/telemetry/config': {
    maxAge: 300,
    transform: Transform.JSON,
  },
  '/no_cache_param': { maxAge: 0 },
  '/develop/service/payment/api/capture/url': {}, // When empty or undefined, it uses default values
};

export const handler = async (): Promise<void> => {
  // This returns an object with the parameter name as key
  const parameters = await getParametersByName(props, { maxAge: 60 });
  for (const [key, value] of Object.entries(parameters)) {
    console.log(`${key}: ${value}`);
  }
};
```

检查 [文档](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#fetching-parameters) 更多实例,以及 [高级科](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#advanced) 详细关于缓冲,变形,定制 基础SDK,等等.

### 从亚马逊秘密管理器获取秘密

要启动, 请为 JavaScript v3 安装库和相应的 AWS SDK :

```sh
npm install @aws-lambda-powertools/parameters @aws-sdk/client-secrets-manager
```

接下来审查您 AWS Lambda 函数所附带的 IAM 权限,并确保您允许 [详细行动](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#iam-permissions) 在工具文档中.

您可以使用 `getSecret` 函数 :

```ts
import { getSecret } from '@aws-lambda-powertools/parameters/secrets';

export const handler = async (): Promise<void> => {
  // Retrieve a single secret
  const secret = await getSecret('my-secret');
  console.log(secret);
};
```

检查 [文档](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#fetching-secrets) 更多实例,以及 [高级科](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#advanced) 详细关于缓冲,变形,定制 基础SDK,等等.

### 从 Amazon DynamoDB 获取值

要启动, 请为 JavaScript v3 安装库和相应的 AWS SDK :

```sh
npm install @aws-lambda-powertools/parameters @aws-sdk/client-dynamodb @aws-sdk/util-dynamodb
```

接下来审查您 AWS Lambda 函数所附带的 IAM 权限,并确保您允许 [详细行动](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#iam-permissions) 在工具文档中.

您可以使用 `DynamoDBProvider.get()` 方法 :

```ts
import { DynamoDBProvider } from '@aws-lambda-powertools/parameters/dynamodb';

const dynamoDBProvider = new DynamoDBProvider({ tableName: 'my-table' });

export const handler = async (): Promise<void> => {
  // Retrieve a value from DynamoDB
  const value = await dynamoDBProvider.get('my-parameter');
  console.log(value);
};
```

为获取多个参数, 您可以使用 `DynamoDBProvider.getMultiple()` 方法代替:

```ts
import { DynamoDBProvider } from '@aws-lambda-powertools/parameters/dynamodb';

const dynamoDBProvider = new DynamoDBProvider({ tableName: 'my-table' });

export const handler = async (): Promise<void> => {
  /**
   * Retrieve multiple values by performing a Query on the DynamoDB table.
   * This returns a dict with the sort key attribute as dict key.
   */
  const values = await dynamoDBProvider.getMultiple('my-hash-key');
  for (const [key, value] of Object.entries(values || {})) {
    // key: param-a
    // value: my-value-a
    console.log(`${key}: ${value}`);
  }
};
```

检查 [文档](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#fetching-secrets) 更多实例,以及 [高级科](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#advanced) 详细关于缓冲,变形,定制 基础SDK,等等.

### 从 AWS appConfig 获取配置

要启动, 请为 JavaScript v3 安装库和相应的 AWS SDK :

```sh
npm install @aws-lambda-powertools/parameters @aws-sdk/client-appconfigdata
```

接下来审查您 AWS Lambda 函数所附带的 IAM 权限,并确保您允许 [详细行动](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#iam-permissions) 在工具文档中.

您可以使用 AWS AppConfig 获取应用程序配置 `getAppConfig` 函数 :

```ts
import { getAppConfig } from '@aws-lambda-powertools/parameters/appconfig';

export const handler = async (): Promise<void> => {
  // Retrieve a configuration, latest version
  const config = await getAppConfig('my-configuration', {
    environment: 'my-env',
    application: 'my-app',
  });
  console.log(config);
};
```

检查 [文档](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#fetching-app-configurations) 更多实例,以及 [高级科](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#advanced) 详细关于缓冲,变形,定制 基础SDK,等等.

### 从 AWS appConfig 代理获取配置

如果你使用 [AWS appConfig 代理蓝巴达扩展](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-lambda-extensions.html),您可以从代理商本地 HTTP 端点获取应用程序配置 `getConfig` 函数 :

```ts
import { getConfig } from '@aws-lambda-powertools/parameters/appconfig-agent';

// Retrieve a configuration from the AppConfig Agent Lambda extension
const config = await getConfig('my-configuration', {
  environment: 'my-env',
  application: 'my-app',
  transform: 'json',
});

export const handler = async (): Promise<void> => {
  console.log(config);
};
```

由于缓冲,投票, 和先发制人由特工处理, `getConfig` 总是从代理的本地端取出,不需要AWS SDK. 检查 [文档](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/#fetching-app-configurations-via-appconfig-agent) 更多细节.

## 贡献

如果你有兴趣为这个项目捐款,请参见我们 [贡献准则](https://github.com/aws-powertools/powertools-lambda-typescript/blob/main/CONTRIBUTING.md)。 。 。 .

## 路线图

AWS Lambda(英语:TypeScript)的"Powertools"行进图受顾客需求所驱动.  
帮助我们确定未来功能或公用事业的优先次序 [更新现有 RFC 和功能请求](https://github.com/aws-powertools/powertools-lambda-typescript/issues),或 [创建新的](https://github.com/aws-powertools/powertools-lambda-typescript/issues/new/choose),在此 GitHub 仓库中.

## 连接

-   **关于 GitHub 讨论的 AWS Lambda 工具**数字 : [加入对话](https://github.com/aws-powertools/powertools-lambda-typescript/discussions)
-   **电子邮件**数字 : [aws-lambda-powertools- feedback@amazon.com 互联网档案馆的存檔,存档日期2014-12-21](mailto:aws-lambda-powertools-feedback@amazon.com)

## 如何支持 AWS Lambda (TypeScript) 的 Powertools ?

### 成为参考客户

了解哪些公司正在使用这个图书馆对于帮助在内部确定项目的优先次序很重要。 如果你的同伴们 正在对 AWS Lambda (TypeScript) 使用 Powertools , 您可以请求将您的姓名和标志添加到 README 文件 提高a [AWS Lambda( TypeScript) 的辅助电源工具(成为参考)](https://s12d.com/become-reference-pt-ts) 问题.

除其他外,下列公司使用Powertools:

-   [Alma 媒体](https://www.almamedia.fi/)
-   [应用自己](https://appyourself.net/)
-   [贝利·纳尔逊](https://www.baileynelson.com.au/)
-   [Banx 软件](https://www.banxware.com/)
-   [凯伦特](https://caylent.com/)
-   [可认证](https://www.certible.com/)
-   [代码](https://www.codeac.io/)
-   [EF 教育第一](https://www.ef.com/)
-   [埃尔瓦](https://elva-group.com/)
-   [飞行重量](https://flyweight.io/)
-   [欺诈](https://fraudfalcon.app/)
-   [全球数据网](https://globaldatanet.com/)
-   [关节](https://guild.com/)
-   [半径](https://hashnode.com/)
-   [内向](https://instil.co/)
-   [本地软件包](https://localstack.cloud/)
-   [我们的隐私](https://oursprivacy.com/)
-   [完美邮递](https://www.perfectpost.fr/)
-   [传感器](https://sennder.com/)
-   [铁丝网股份有限公司](https://www.tecracer.com/)
-   [绊脚石10](https://www.trek10.com/)
-   [学校](https://www.weschool.com/)

### 分享你的工作

分享您为 AWS Lambda (TypeScript) 所做的 Powertools 。 看看社区有什么 [已经共享](https://docs.aws.amazon.com/powertools/typescript/latest/we_made_this) 关于AWS Lambda的Powertools (TypeScript).

### 使用 Lambda 层

这帮助我们了解谁用Powertools为AWS Lambda(英语:TypeScript (TypeScript))以非侵入性的方式使用Powertools,并帮助我们获得未来对其他AWS Lambda语言的Powertool的投资. 何时 [使用图层](https://docs.aws.amazon.com/powertools/typescript/latest/getting-started/lambda-layers/),您可以添加Powertools作为dev的依赖性,以不影响开发过程.

## 许可证

这个图书馆根据MIT-0许可证获得许可. 见LICENSE文件.

## 常见问题

### @aws-lambda-powertools/parameters 是什么？

AWS Lambda \(TypeScript\) 库的 Powertools 参数包

### 如何安装 @aws-lambda-powertools/parameters？

在项目目录运行 npm install @aws-lambda-powertools/parameters，或使用 pnpm add / yarn add / bun add。

### @aws-lambda-powertools/parameters 支持 TypeScript 吗？

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

### @aws-lambda-powertools/parameters 支持 ESM 还是 CommonJS？

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

### @aws-lambda-powertools/parameters 可以商用吗？

@aws-lambda-powertools/parameters 使用 MIT-0 许可。声明的许可为 MIT-0，请阅读许可原文确认使用条件。以上为概括，不构成法律意见，请以许可原文为准。

### @aws-lambda-powertools/parameters 的下载量有多少？

根据 npm 官方下载统计，@aws-lambda-powertools/parameters 在 2026/10/08 – 2026/11/06 这 30 天内被下载 1,176,158 次，日均约 39,205 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @aws-lambda-powertools/parameters 还在维护吗？

最新版本 2\.36\.0 发布于 2026/10/06（1 个月前）；至今共发布 74 个版本，其中过去 12 个月发布了 11 个；首次发布于 2023/03/21。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

