# @equinor/fusion-framework-dev-server 中文文档

规范地址：https://npmcn.com/package/%40equinor/fusion-framework-dev-server/

版本：2\.3\.4
npm 元数据更新时间：2026-11-12T09:56:25.679Z
中文译文更新时间：2026-11-13T20:27:26.064Z
软件包许可：ISC

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

原始 npm 页面：https://www.npmjs.com/package/%40equinor/fusion-framework-dev-server
原文对照：https://npmcn.com/package/%40equinor/fusion-framework-dev-server/?lang=original
源码仓库：https://github.com/equinor/fusion-framework

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

- 包体积（解压后）：269 kB，31 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：4 个
- peer 依赖：vite ^7\.0\.0 \|\| ^8\.0\.0
- 首次发布：2025-05-27T15:15:32.660Z
- 最新版本发布：2026-11-12T09:56:25.105Z
- 近 30 天下载量：9189（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：94（近 12 个月 65 个）

## 中文简介

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

## 安装

```sh
npm install @equinor/fusion-framework-dev-server
```

也可以使用：`pnpm add @equinor/fusion-framework-dev-server`、`yarn add @equinor/fusion-framework-dev-server`、`bun add @equinor/fusion-framework-dev-server`

## README

# @ 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`](https://npmcn.com/package/%40equinor/cli-plugins/mock-server/README.md) |

## 快开始

```sh
pnpm add -D @equinor/fusion-framework-dev-server vite
```

```typescript
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经常指向同一个终点,但它们服务于不同的消费者.

继续 [开始](https://npmcn.com/package/%40equinor/fusion-framework-dev-server/docs/getting-started.md) 完全的精神模型.

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

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

```sh
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 环境配置](https://npmcn.com/package/%40equinor/fusion-framework-dev-server/docs/configuration.md#send-telemetry-to-an-otlp-endpoint) 关于终点合同和边界.

## 本地存储 API

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

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

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

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

见 [开发模拟服务](https://npmcn.com/package/%40equinor/fusion-framework-dev-server/docs/mocking.md) 用于正常开发的顶点,相隔 `--mock` 模式, 直接服务, 以及可执行文件 `<name>.mock.ts` 模块。 为了验证应用程序 帮助按钮打开右侧文章,参见 [本地测试帮助文章](https://npmcn.com/package/%40equinor/utils/openapi-mock-server/docs/testing-help-articles.md)要检查 分析应用程序的音轨,参见 [测试本地分析](https://npmcn.com/package/%40equinor/utils/openapi-mock-server/docs/testing-analytics.md)。 。 。 .

## 学习顺序

1.  [开始](https://npmcn.com/package/%40equinor/fusion-framework-dev-server/docs/getting-started.md) 解释服务器的生命周期和最小的有用设置.
2.  [配置 Dev 服务器](https://npmcn.com/package/%40equinor/fusion-framework-dev-server/docs/configuration.md) 涵盖SPA环境,API代理和伐木.
3.  [开发模拟服务](https://npmcn.com/package/%40equinor/fusion-framework-dev-server/docs/mocking.md) 显示推荐的可选模拟工作流程.
4.  [高级用途](https://npmcn.com/package/%40equinor/fusion-framework-dev-server/docs/advanced.md) 覆盖服务处理,线路,Vite覆盖,以及扩展接口.
5.  [解决问题](https://npmcn.com/package/%40equinor/fusion-framework-dev-server/docs/troubleshooting.md) 将常见症状映射到负责配置.

## 公共 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 是什么？

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

### 如何安装 @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 和提交记录判断。

