@equinor/fusion-framework-dev-server

中文文档
2.3.4发布于 2026/11/12ISCTypeScriptES Module近 30 天下载 9189

用于运行核聚变框架开发服务器的软件包

中文使用文档
文档目录8 节
  1. 选择您的切入点
  2. 快开始
  3. 向本地OTLP 采集器发送应用程序遥测
  4. 本地存储 API
  5. 学习顺序
  6. 公共 API
  7. 要求和界限
  8. 许可证

@ equinor/ 聚变框架- dev- server

用于Fusion框架应用的开发服务器原始. 包裹结合了维特, React Fastresh,SPA环境注入,Fusion服务发现,以及本地API代理.

[TIP] 大多数应用程序开发者应该从 ffc app dev时直接使用此软件包 正在构建框架工具、自定义开发命令或需要 Vite 集成 控制服务器创建.

选择您的切入点

目标从这里开始
本地运行聚合应用程序ffc app dev 从 @equinor/fusion-framework-cli
创建并启动配置的 Vite 服务器createDevServer(options, overrides?)
不启动服务器而生成 Vite 配置createDevServerConfig(options, overrides?)
自定义服务发现代理路线processServices(data, args)
针对本地 OpenAPI 模拟开发@equinor/fusion-framework-cli-plugin-mock-server

快开始

pnpm add -D @equinor/fusion-framework-dev-server vite
import { createDevServer } from '@equinor/fusion-framework-dev-server';

const server = await createDevServer({
  spa: {
    templateEnv: {
      portal: { id: 'my-portal' },
      title: 'My application',
      serviceDiscovery: {
        url: 'https://service-discovery.example.com',
        scopes: ['api://example.com/user_impersonation'],
      },
      msal: {
        clientId: 'client-id',
        tenantId: 'tenant-id',
        redirectUri: '/authentication/login-callback',
        requiresAuth: 'true',
      },
    },
  },
  api: { serviceDiscoveryUrl: 'https://service-discovery.example.com' },
});

await server.listen();
server.printUrls();

浏览器接收 spa.templateEnv。节点开发服务器使用 api.serviceDiscoveryUrl 获取服务定义并创建同源代理路由。 这些 两个URL经常指向同一个终点,但它们服务于不同的消费者.

继续 开始 完全的精神模型.

向本地OTLP 采集器发送应用程序遥测

从您的应用程序仓库中, 在启动 Dev 服务器时设置环境变量 :

FUSION_DEV_SERVER_OTLP_ENDPOINT=http://localhost:4318 pnpm exec ffc app dev

没有应用代码或 DevServerOptions 需要改变。 遥测舱的 OtlpAdapter 用途 标准 OpenTeleometry OTLP/ HTTP 日志导出器,通过同源的 dev-server 路由。 应用记录 包含 fusion.app.key 财务报告和审定财务报表 source: app; 使用 shell 记录 source: framework。 。 。 .

浏览器获取/ XHR 跨度也被导出 。 W3C 战车 traceparent 财务报告和审定财务报表 tracestate 信头连接 使用仪器后端的请求,以及活动期间所排放的日志,都带有其跟踪/扫描标识. 相同的收藏器 URL 配置 /v1/logs 财务报告和审定财务报表 /v1/traces。 。 。 .

应用程序明确配置的遥测适配器优先,所以其记录不是同样 由 dev-server 返回导出。 未设定的可变函数未改变遥测和生产 建设永远无法实现这种一体化。 收藏器失败在 dev- server 中报告一次 终端不中断应用程序.

见 OTLP 环境配置 关于终点合同和边界.

本地存储 API

当后端不可用、不稳定或需要时安装可选的模拟服务器插件 确定性对策:

pnpm add -D @equinor/fusion-framework-cli-plugin-mock-server
ffc mock-server ./mocks --port 4010

[大 ffc mock-server 是一个独立的前景进程。 安装插件不启动 与 ffc app dev; 开发者或测试跑者拥有其生命周期.

插件添加了类型 mockServer 设置为 DevServerOptions 只有在输入其类型时, 保持这个基础包独立于可选的取笑工具.

见 开发模拟服务 用于正常开发的顶点,相隔 --mock 模式, 直接服务, 以及可执行文件 <name>.mock.ts 模块。 为了验证应用程序 帮助按钮打开右侧文章,参见 本地测试帮助文章要检查 分析应用程序的音轨,参见 测试本地分析。 。 。 .

学习顺序

  1. 开始 解释服务器的生命周期和最小的有用设置.
  2. 配置 Dev 服务器 涵盖SPA环境,API代理和伐木.
  3. 开发模拟服务 显示推荐的可选模拟工作流程.
  4. 高级用途 覆盖服务处理,线路,Vite覆盖,以及扩展接口.
  5. 解决问题 将常见症状映射到负责配置.

公共 API

  • createDevServer 创建已配置 ViteDevServer调用 listen() 你自己来.
  • createDevServerConfig 返回维特 UserConfig 用于消耗另一个工具.
  • processServices 重写通过本地代理和返回路径发现了服务 URI.
  • DevServerOptions<TEnv> 配置 SPA 注入、 API 发现和记录 。 它是一个接口,因此可选插件可以扩充它.
  • FusionService 使用 key, (中文(简体) ), uri, (中文(简体) ), name,和可选 OAuth scopes。 。 。 .

要求和界限

  • 需要Vite 7或8作为同伴依赖.
  • api.serviceDiscoveryUrl 是由低等API要求的.
  • 每个请求 Dev 服务器在上游的代理( 服务发现和 API 路由) X-Fusion-Dev-Server-Name 财务报告和审定财务报表 X-Fusion-Dev-Server-Version,所以上游遥测可以辨别 地方发展交通分开. 添加更多内容 api.headers· ; ffc 添加 X-Fusion-Mock: true|false。 。 。 .
  • 软件包配置开发;它不构建或发布应用程序.
  • Mock-server的安装和处理寿命周期是可选的,也是这个包的外在.

许可证

公务员制度委员会

版本与发布记录

@equinor/fusion-framework-dev-server 共发布 94 个版本,首次发布于 2025/05/27;过去 12 个月发布了 65 个版本。

版本发布日期距今
2.3.4latest2026/11/121 天前
2.3.4-next.0next2026/11/112 天前
2.3.32026/11/112 天前
2.3.3-next.22026/10/2915 天前
2.3.3-next.12026/10/2816 天前
2.3.3-next.02026/10/2816 天前

其他发布通道:cli-search-index → 1.1.13-cli-search-index.0,msal-v5 → 1.1.21-msal-v5.1,trusted-publishing-20261015 → 2.3.2-trusted-publishing-20261015-9dfe7602cd2a49a8a9df00d62c26e7304a82a85a,next → 2.3.4-next.0。

关于 @equinor/fusion-framework-dev-server 的常见问题

@equinor/fusion-framework-dev-server 是什么?

用于运行核聚变框架开发服务器的软件包

如何安装 @equinor/fusion-framework-dev-server?

在项目目录运行 npm install @equinor/fusion-framework-dev-server,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:vite(^7.0.0 || ^8.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@equinor/fusion-framework-dev-server 支持 TypeScript 吗?

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

@equinor/fusion-framework-dev-server 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@equinor/fusion-framework-dev-server 可以商用吗?

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

@equinor/fusion-framework-dev-server 的下载量有多少?

根据 npm 官方下载统计,@equinor/fusion-framework-dev-server 在 2026/10/14 – 2026/11/12 这 30 天内被下载 9,189 次,日均约 306 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@equinor/fusion-framework-dev-server 还在维护吗?

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