@flaghoist/provider-web

中文文档
0.2.1发布于 2026/10/31Apache-2.0TypeScriptESM + CJS近 30 天下载 8369

Flaghoist的OpenFeature Web SDK提供商——浏览器/客户端应用程序的预接OFREP提供商.

中文使用文档

@laghoist/ 提供者- 网络

一个浏览器应用程序的OpenFeature供应商,指向一个Flaghoist服务器.

它是OFREP官方的网络提供者, 已经完成的线程: 您的服务器 URL, 读取 API 密钥作为附件 x-api-key 每个请求都标有标题.

npm install @flaghoist/provider-web @openfeature/web-sdk
import { OpenFeature } from '@openfeature/web-sdk'
import { FlaghoistWebProvider } from '@flaghoist/provider-web'

await OpenFeature.setProviderAndWait(
  new FlaghoistWebProvider({
    url: 'https://team-flags.example.workers.dev',
    apiKey: import.meta.env.VITE_FLAGS_KEY,
  }),
)

const client = OpenFeature.getClient()
client.getBooleanValue('new-checkout', false)

用Vue吗? @flaghoist/vue 用一个 useFeatureFlag() 可调和.

选项

官方的每一个选择 OFREP 网络提供者 路过 不变,但默认值相同。 二是值得考虑的.

相续相续. 提供者在启动时、 当 当标签再次可见时,评价上下文会发生变化。 它不投票 默认,所以 在某一页上停留的用户不会看到切换,直到其中之一发生。 设定 pollInterval 用于实时更新 :

new FlaghoistWebProvider({
  url: 'https://team-flags.example.workers.dev',
  apiKey: import.meta.env.VITE_FLAGS_KEY,
  pollInterval: 30_000, // re-fetch every 30 seconds. Default 0 (off)
})

服务器缓存旗下定义 cacheTtlSeconds (默认30起),所以投票速度要快得多 而不是大部分得到相同的答案. changeDetection: 'none' 转换所有背景刷新 关上,还有 disableVisibilityRefresh: true 停止标签焦点上的刷新.

看起来像一个停电. 默认( E)cacheMode: 'local-cache-first'提供者保存 它看到的最后一面旗帜 localStorage 最长30天(cacheTTL,以秒计). 从他们开始 立即,如果服务器无法到达,用户会保留最后已知的值. 这与 @flaghoist/provider-node,在服务器下架时返回代码中的默认值。 选择 合适吗

cacheMode启动时服务器无法访问
'local-cache-first' (默认)已保存旗帜, 刷新后端最后已知的数值
'network-first'等待服务器最后已知的数值
'disabled'等待服务器您的代码默认

一个被拒绝的密钥(401,403)或糟糕的请求(400)从不隐藏在被保存的旗帜后,任何模式下.

timeoutMs, (中文(简体) ), headersFactory, (中文(简体) ), query, (中文(简体) ), fetchImplementation, (中文(简体) ), cacheKeyGenerator 和SSE系统 设置也被接受;请参见上游 README .

因为这是一个标准 OFREP 提供者, 这里没有什么是 Flaghoist 具体在线。 狦 后移到 OFREP 后端, 您的应用代码不会更改 .

只使用读取的 API 密钥 。 任何你放在这里的东西 任何打开地凳的人都能看到.

状态

贝塔 核心是特色完成的,并准备进行真正的项目。 API 仍然可以更改之前 1.0,每个破碎的更改 都在更改日志中发出来, 所以将您的版本 并阅读 升级时的音符。 如果有事情中断,问题确实有用.

阿帕奇2.0. 部分内容 旗舰。 。 。 .

版本与发布记录

@flaghoist/provider-web 共发布 5 个版本,首次发布于 2026/08/22;过去 12 个月发布了 5 个版本。

版本发布日期距今
0.2.1latest2026/10/3115 天前
0.2.02026/10/2620 天前
0.1.22026/08/242 个月前
0.1.12026/08/222 个月前
0.1.02026/08/222 个月前

关于 @flaghoist/provider-web 的常见问题

@flaghoist/provider-web 是什么?

Flaghoist的OpenFeature Web SDK提供商——浏览器/客户端应用程序的预接OFREP提供商.

如何安装 @flaghoist/provider-web?

在项目目录运行 npm install @flaghoist/provider-web,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@openfeature/web-sdk(^1.10.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@flaghoist/provider-web 支持 TypeScript 吗?

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

@flaghoist/provider-web 支持 ESM 还是 CommonJS?

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

@flaghoist/provider-web 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@flaghoist/provider-web 可以商用吗?

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

@flaghoist/provider-web 的下载量有多少?

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

@flaghoist/provider-web 还在维护吗?

最新版本 0.2.1 发布于 2026/10/31(15 天前);至今共发布 5 个版本,其中过去 12 个月发布了 5 个;首次发布于 2026/08/22。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。