# @analytics/aws-pinpoint 中文文档

规范地址：https://npmcn.com/package/%40analytics/aws-pinpoint/

版本：0\.7\.15
npm 元数据更新时间：2024-12-12T01:08:54.979Z
中文译文更新时间：2026-11-06T01:53:17.644Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40analytics/aws-pinpoint
原文对照：https://npmcn.com/package/%40analytics/aws-pinpoint/?lang=original
项目主页：https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-aws-pinpoint
源码仓库：https://github.com/DavidWells/analytics

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

- 包体积（解压后）：415 kB，10 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：未声明
- 运行依赖：10 个
- 首次发布：2021-01-26T01:03:13.534Z
- 最新版本发布：2024-12-12T01:08:54.773Z
- 近 30 天下载量：8991（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：50（近 12 个月 0 个）

## 中文简介

AWS 用于“ 分析” 模块的平分集成

## 安装

```sh
npm install @analytics/aws-pinpoint
```

也可以使用：`pnpm add @analytics/aws-pinpoint`、`yarn add @analytics/aws-pinpoint`、`bun add @analytics/aws-pinpoint`

## README

# AWS 平分插件 `analytics`

与 [AWS 平分点](https://aws.amazon.com/pinpoint/) 页:1 [分析](https://www.npmjs.com/package/analytics)

Amazon Pinpoint是一个灵活而可扩展的出站和出站营销通信服务. 您可以通过电子邮件、短信、推或语音等渠道与客户联系.

这个包的重量在 `12.91kb` 晕倒了.

[查看文件](https://getanalytics.io/plugins/aws-pinpoint/)。 。 。 .

单击以扩展

-   [安装](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-installation)
-   [如何使用](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-how-to-use)
-   [支持的平台](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-platforms-supported)
-   [浏览器使用量](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-browser-usage)
    -   [浏览器 API](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-browser-api)
    -   [浏览器配置选项](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-configuration-options-for-browser)
-   [服务器侧用法](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-server-side-usage)
    -   [服务器侧 API](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-server-side-api)
    -   [服务器侧配置选项](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-configuration-options-for-server-side)
-   [其他例子](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-additional-examples)
-   [认证](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-authenticating)

## 安装

安装 `analytics` 财务报告和审定财务报表 `@analytics/aws-pinpoint` 软件包

```bash
npm install analytics
npm install @analytics/aws-pinpoint
```

## 如何使用

这个 `@analytics/aws-pinpoint` 软件包在 [浏览器](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-browser-usage) 财务报告和审定财务报表 [在节点.js的服务器侧](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-server-side-usage)。要使用、安装软件包,在您的工程中包含并初始化插件 [分析](https://www.npmjs.com/package/analytics)。 。 。 .

以下为如何使用浏览器插件的例子.

```js
import Analytics from 'analytics'
import awsPinpointPlugin from '@analytics/aws-pinpoint'

const analytics = Analytics({
  app: 'awesome-app',
  plugins: [
    awsPinpointPlugin({
      pinpointAppId: '938bebb1ae954e123133213160f2b3be4',
      getCredentials: () => Auth.currentCredentials()
    })
  ]
})

/* Track a page view */
analytics.page()

/* Track a custom event */
analytics.track('cartCheckout', {
  item: 'pink socks',
  price: 20
})

/* Identify a visitor */
analytics.identify('user-id-xyz', {
  firstName: 'bill',
  lastName: 'murray'
})

```

初始化后 `analytics` 与 `awsPinpointPlugin` 插件, 数据将随时发送到 AWSPinpoint [分析. track](https://getanalytics.io/api/#analyticstrack),或 [分析 识别](https://getanalytics.io/api/#analyticsidentify) 被调用.

见 [其他执行实例](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-additional-examples) 在您的项目中使用更多细节 .

## 支持的平台

这个 `@analytics/aws-pinpoint` 软件包在 [浏览器](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-browser-usage) 财务报告和审定财务报表 [在节点.js的服务器侧](https://npmcn.com/package/%40analytics/aws-pinpoint/#readme-server-side-usage)

## 浏览器使用量

AWSPinpoint客户端侧浏览器插件使用这些分析的api方法:

-   **[分析. p](https://getanalytics.io/api/#analyticspage)** - 将页面视图发送到 AWSPinpoint
-   **[分析. track](https://getanalytics.io/api/#analyticstrack)** - 跟踪自定义事件并发送到 AWSPinpoint
-   **[分析 识别](https://getanalytics.io/api/#analyticsidentify)** - 确定访客身份并将详情发送给AWSPinpoint
-   **[分析. 重置](https://getanalytics.io/api/#analyticsreset)** - 重置 AWSPinpoint 值的浏览器存储 cookie 和本地存储器

### 浏览器 API

```js
import Analytics from 'analytics'
import awsPinpointPlugin from '@analytics/aws-pinpoint'

const analytics = Analytics({
  app: 'awesome-app',
  plugins: [
    awsPinpointPlugin({
      pinpointAppId: '938bebb1ae954e123133213160f2b3be4',
      getCredentials: () => Auth.currentCredentials()
    })
  ]
})

```

### 浏览器配置选项

| 选项 | 说明 |
| :-- | :-- |
| `pinpointAppId`  
**所需经费** - 绳子 | AWS 平分应用程序 客户端跟踪的ID |
| `getCredentials`  
**所需经费** - 函数 | 获得 AWS 认知证书的 Async 函数 |
| `pinpointRegion`  
_选项_ - 绳子 | AWS平分区. 是我们东边的默认 1个 |
| `appTitle`  
_选项_ - 绳子 | 正在录制该事件的应用程序标题. |
| `appPackageName`  
_选项_ - 绳子 | App包的名称,例如com.example. 我的应用. |
| `appVersionCode`  
_选项_ - 绳子 | 该应用的版本编号,例如3.2.0 |
| `fips`  
_选项_ - 绳子 | Pinpoint 使用 AWS FIPS 服务端点 |
| `disableAnonymousTraffic`  
_选项_ - 布尔 | 禁用匿名事件开火 |

## 服务器侧用法

AWSPinpoint 服务器端节点.js插件使用这些分析的api方法:

-   **[分析. track](https://getanalytics.io/api/#analyticstrack)** - 跟踪自定义事件并发送到 AWSPinpoint
-   **[分析 识别](https://getanalytics.io/api/#analyticsidentify)** - 确定访客身份并将详情发送给AWSPinpoint

### 服务器侧 API

```js
import Analytics from 'analytics'
import awsPinpointPlugin from '@analytics/aws-pinpoint'

const analytics = Analytics({
  app: 'awesome-app',
  plugins: [
    awsPinpointPlugin({
      pinpointAppId: '938bebb1ae954e123133213160f2b3be4',
      getCredentials: () => Auth.currentCredentials()
    })
  ]
})

```

### 服务器侧配置选项

| 选项 | 说明 |
| :-- | :-- |
| `pinpointAppId`  
**所需经费** - 绳子 | AWS 平分应用程序 客户端跟踪的ID |
| `getCredentials`  
**所需经费** - 函数 | 获得 AWS 认知证书的 Async 函数 |
| `pinpointRegion`  
_选项_ - 绳子 | AWS平分区. 是我们东边的默认 1个 |
| `appTitle`  
_选项_ - 绳子 | 正在录制该事件的应用程序标题. |
| `appPackageName`  
_选项_ - 绳子 | App包的名称,例如com.example. 我的应用. |
| `appVersionCode`  
_选项_ - 绳子 | 该应用的版本编号,例如3.2.0 |
| `fips`  
_选项_ - 绳子 | Pinpoint 使用 AWS FIPS 服务端点 |
| `disableAnonymousTraffic`  
_选项_ - 布尔 | 禁用匿名事件开火 |

## 其他例子

以下是其他执行实例.

服务器侧 ES6

```js
import Analytics from 'analytics'
import awsPinpointPlugin from '@analytics/aws-pinpoint'

const analytics = Analytics({
  app: 'awesome-app',
  plugins: [
    awsPinpointPlugin({
      pinpointAppId: '938bebb1ae954e123133213160f2b3be4',
      getCredentials: () => Auth.currentCredentials()
    })
    // ...other plugins
  ]
})

/* Track a custom event */
analytics.track('cartCheckout', {
  item: 'pink socks',
  price: 20
})

/* Identify a visitor */
analytics.identify('user-id-xyz', {
  firstName: 'bill',
  lastName: 'murray'
})

```

具有共同JS的服务器端节点.js

如果使用节点,您将想要导入 `.default`

```js
const analyticsLib = require('analytics').default
const awsPinpointPlugin = require('@analytics/aws-pinpoint').default

const analytics = analyticsLib({
  app: 'my-app-name',
  plugins: [
    awsPinpointPlugin({
      pinpointAppId: '938bebb1ae954e123133213160f2b3be4',
      getCredentials: () => Auth.currentCredentials()
    })
  ]
})

/* Track a custom event */
analytics.track('cartCheckout', {
  item: 'pink socks',
  price: 20
})

/* Identify a visitor */
analytics.identify('user-id-xyz', {
  firstName: 'bill',
  lastName: 'murray'
})

```

在 HTML 中使用

以下是通过unpkg CDN导入的例子. 请注意,这将拉入该套件的最新版本.

```html
<!DOCTYPE html>
<html>
  <head>
    <title>Using @analytics/aws-pinpoint in HTML</title>
    <script src="https://unpkg.com/analytics/dist/analytics.min.js"></script>
    <script src="https://unpkg.com/@analytics/aws-pinpoint/dist/@analytics/aws-pinpoint.min.js"></script>
    <script type="text/javascript">
      /* Initialize analytics */
      var Analytics = _analytics.init({
        app: 'my-app-name',
        plugins: [
          analyticsAWSPinpoint({
            pinpointAppId: '938bebb1ae954e123133213160f2b3be4',
            getCredentials: () => Auth.currentCredentials()
          })
        ]
      })

      /* Track a page view */
      analytics.page()

      /* Track a custom event */
      analytics.track('cartCheckout', {
        item: 'pink socks',
        price: 20
      })

      /* Identify a visitor */
      analytics.identify('user-id-xyz', {
        firstName: 'bill',
        lastName: 'murray'
      })
    </script>
  </head>
  <body>
    ....
  </body>
</html>

```

通过 ES 模块在 HTML 中使用

使用 `@analytics/aws-pinpoint` 在无害环境管理模块中.

```html
<!DOCTYPE html>
<html>
  <head>
    <title>Using @analytics/aws-pinpoint in HTML via ESModules</title>
    <script>
      // Polyfill process.
      // **Note**: Because `import`s are hoisted, we need a separate, prior <script> block.
      window.process = window.process || { env: { NODE_ENV: 'production' } }
    </script>
    <script type="module">
      import analytics from 'https://unpkg.com/analytics/lib/analytics.browser.es.js?module'
      import analyticsAWSPinpoint from 'https://unpkg.com/@analytics/aws-pinpoint/lib/analytics-plugin-aws-pinpoint.browser.es.js?module'
      /* Initialize analytics */
      const Analytics = analytics({
        app: 'analytics-html-demo',
        debug: true,
        plugins: [
          analyticsAWSPinpoint({
            pinpointAppId: '938bebb1ae954e123133213160f2b3be4',
            getCredentials: () => Auth.currentCredentials()
          })
          // ... add any other third party analytics plugins
        ]
      })

      /* Track a page view */
      analytics.page()

      /* Track a custom event */
      analytics.track('cartCheckout', {
        item: 'pink socks',
        price: 20
      })

      /* Identify a visitor */
      analytics.identify('user-id-xyz', {
        firstName: 'bill',
        lastName: 'murray'
      })
    </script>
  </head>
  <body>
    ....
  </body>
</html>

```

## 认证

Pinpoint需要有效身份才能给服务打电话.

要做到这一点,你需要使用 AWS SDK, [AWS 扩展](https://docs.amplify.aws/lib/auth/getting-started/q/platform/js), (中文(简体) ), [微小的认知](https://www.npmjs.com/package/tiny-cognito) 等,以维生 AWS 证书,允许访客拨打定点

这个 `getCredentials` 必须提供并返回返回的对象 `accessKeyId`, (中文(简体) ), `secretAccessKey`, (中文(简体) ), `sessionToken` 可以访问您的 AWS 指定实例.

```js
{
  accessKeyId: 'xyz',
  secretAccessKey: 'xyz',
  sessionToken: 'xyz'
}
```

以下是使用 `tiny-cognito`

```js
import Analytics from 'analytics'
import cognitoAuth from 'tiny-cognito'
import awsPinpointPlugin from '@analytics/aws-pinpoint'

// Identity pool ID that allows for unauthenticated access. 
const poolId = 'us-east-1:11111111-22222-222222-44444'
const region = 'us-east-1'

function getCredentials() {
  return cognitoAuth({
    COGNITO_REGION: region,
    IDENTITY_POOL_ID: poolId
  })
}

const analytics = Analytics({
  app: 'awesome-app',
  plugins: [
    awsPinpointPlugin({
      pinpointAppId: '123456789',
      getCredentials: getCredentials
    })
  ]
})
```

以下是使用 `@aws-amplify/auth`

```js
import Analytics from 'analytics'
import AmplifyAuth from '@aws-amplify/auth'
import awsPinpointPlugin from '@analytics/aws-pinpoint'

const analytics = Analytics({
  app: 'awesome-app',
  plugins: [
    awsPinpointPlugin({
      pinpointAppId: '123456789',
      // Get credentials from amplify
      getCredentials: async () => {
        const creds = await AmplifyAuth.currentCredentials()
        return creds
      },
    })
  ]
})
```

## 常见问题

### @analytics/aws-pinpoint 是什么？

AWS 用于“ 分析” 模块的平分集成

### 如何安装 @analytics/aws-pinpoint？

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

### @analytics/aws-pinpoint 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/analytics\_\_aws-pinpoint 是否存在。

### @analytics/aws-pinpoint 支持 ESM 还是 CommonJS？

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

### @analytics/aws-pinpoint 可以商用吗？

@analytics/aws-pinpoint 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @analytics/aws-pinpoint 的下载量有多少？

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

### @analytics/aws-pinpoint 还在维护吗？

最新版本 0\.7\.15 发布于 2024/12/12（1\.9 年前）；至今共发布 50 个版本，其中过去 12 个月发布了 0 个；首次发布于 2021/01/26。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

