# @featbit/openfeature-provider-node-server 中文文档

规范地址：https://npmcn.com/package/%40featbit/openfeature-provider-node-server/

版本：1\.4\.1
npm 元数据更新时间：2026-11-04T09:24:28.791Z
中文译文更新时间：2026-11-14T12:48:52.210Z
软件包许可：ISC

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

原始 npm 页面：https://www.npmjs.com/package/%40featbit/openfeature-provider-node-server
原文对照：https://npmcn.com/package/%40featbit/openfeature-provider-node-server/?lang=original
项目主页：https://www.featbit.co/
源码仓库：https://github.com/featbit/openfeature-provider-node-server

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

- 包体积（解压后）：46.2 kB，28 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- peer 依赖：@openfeature/server-sdk ^1\.20\.0，@featbit/node-server-sdk ^1\.4\.1
- 首次发布：2024-01-09T14:11:58.574Z
- 最新版本发布：2026-11-04T09:24:28.580Z
- 近 30 天下载量：50819（2026-10-15 至 2026-11-13，npm 官方下载统计）
- 已发布版本数：10（近 12 个月 6 个）

## 中文简介

FeatBit 节点 SDK 的 OpenFeat 提供者执行

## 安装

```sh
npm install @featbit/openfeature-provider-node-server
```

也可以使用：`pnpm add @featbit/openfeature-provider-node-server`、`yarn add @featbit/openfeature-provider-node-server`、`bun add @featbit/openfeature-provider-node-server`

## README

# FeatBit OpenFeature 为节点提供商.js SDK

## 导言

这是 OpenFeature 供应商 [节点.js 服务器-Side SDK](https://github.com/featbit/featbit-node-server-sdk) 100%的开源功能旗管理平台 [费特比特](https://github.com/featbit/featbit)。 。 。 .

FeatBit OpenFeature供应商主要设计用于网络服务器和应用等多用户系统. 它并非用于桌面和嵌入式系统应用程序.

## 跟踪

在注册和初始化提供者后,使用 OpenFeature 客户端跟踪事件:

```js
const client = OpenFeature.getClient();
const context = { targetingKey: 'user-123' };

client.track('page-view', context);
client.track('purchase', context, { value: 99.9 });
```

跟踪使用与旗帜评价相同的上下文对用户绘图,包括: `targetingKey` (或遗产) `key`, (中文(简体) ), `name`,和自定义用户属性。 OpenFeature 之前合并上下文 将其传递给提供者,因此也可以使用客户端或全局上下文上的用户密钥集. 可选 `value` 转至 FeatBit 作为数值;省去时 FeatBit SDK 默认为 `1`。数值为 `0` 被保存下来。 其他跟踪活动详情 被忽略,因为 FeatBit SDK 只支持一个数字度量值.

`track` 返回时 `void` 无需等待。 活动由FeatBit提供 SDK事件处理器. 打电话 `await OpenFeature.close()` 在应用程序关闭时冲出 待定活动和释放资源.

## 支持的节点版本

这个版本的FeatBit OpenFeature提供商与Node.js版本16及以上兼容.

## 开始

### 安装

```bash
npm install @openfeature/server-sdk
npm install @featbit/node-server-sdk
npm install @featbit/openfeature-provider-node-server
```

### 快开始

```js
import { OpenFeature, ProviderEvents } from '@openfeature/server-sdk';
import { FbProvider } from '@featbit/openfeature-provider-node-server';

const provider = new FbProvider({
    sdkKey: '<your-sdk-key>',
    streamingUri: '<your-streaming-uri>',
    eventsUri: '<your-events-uri>'
});

OpenFeature.setProvider(provider);

// If you need access to the FbClient, then you can use provider.getClient()

// Evaluations before the provider indicates it is ready may get default values with a
// CLIENT_NOT_READY reason.
OpenFeature.addHandler(ProviderEvents.Ready, (eventDetails) => {
    console.log(`Changed ${eventDetails.flagsChanged}`);
});


// The FeatBit provider supports the ProviderEvents.ConfigurationChanged event.
// The provider will emit this event for any flag key that may have changed (each event will contain
// a single key in the `flagsChanged` field).
OpenFeature.addHandler(ProviderEvents.ConfigurationChanged, async (eventDetails) => {
    const client = OpenFeature.getClient();
    const value = await client.getBooleanValue('ff1', false, {targetingKey: 'my-key'});
    console.log({...eventDetails, value});
});

// (async () => {
//     // When the FeatBit provider is closed it will flush the events on the FbClient instance.
//     // This can be useful for short lived processes.
//     await OpenFeature.close();
// })();
```

## 常见问题

### @featbit/openfeature-provider-node-server 是什么？

FeatBit 节点 SDK 的 OpenFeat 提供者执行

### 如何安装 @featbit/openfeature-provider-node-server？

在项目目录运行 npm install @featbit/openfeature-provider-node-server，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@openfeature/server-sdk（^1\.20\.0）、@featbit/node-server-sdk（^1\.4\.1）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @featbit/openfeature-provider-node-server 支持 TypeScript 吗？

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

### @featbit/openfeature-provider-node-server 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @featbit/openfeature-provider-node-server 可以商用吗？

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

### @featbit/openfeature-provider-node-server 的下载量有多少？

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

### @featbit/openfeature-provider-node-server 还在维护吗？

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

