fastify/fastify-nextjs
为现有 Fastify 服务器提供 Next.js 与 React 服务端渲染支持的插件。
- Star
- 557
- Fork
- 63
- 未关闭 Issue
- 6
- 最近提交
- 3天前
这是什么?
@fastify/nextjs 是一个 Fastify 插件,用于在已有的 Fastify 服务器中渲染 Next.js 页面。它并不会用 Fastify 替换 Next.js 自带的 Web 服务器,而是在 Fastify 实例上暴露 `next` 路由接口,让指定路由交由 Next.js 渲染。
路由需要声明在 `after` 回调中,以便 Next.js 完成初始化。开发者可以直接渲染页面、在注册插件时传入自定义 Next.js 选项,也可以在自定义处理器中调用 `reply.nextRender` 或 `reply.nextRenderError`。默认会处理 `_next/*` 静态资源请求,如需自定义预处理可以关闭。
插件集成了 @fastify/under-pressure,可在服务器负载过高时返回错误,因为 React 服务端渲染会阻塞 Node.js 事件循环。此外,它还支持把其他 Fastify 插件的实例挂载到请求对象上供页面使用,并可在开发模式下调大大型 Next.js 项目的插件超时时间。
核心功能
- 01在 Fastify 上暴露 `next` 路由接口,用于渲染 Next.js 页面。
- 02支持自定义渲染处理器,并提供 `reply.nextRender` 与 `reply.nextRenderError` 辅助方法。
- 03默认处理 `_next/*` 静态资源,也可通过选项关闭。
- 04可选集成 under-pressure,根据负载实现熔断保护。
- 05可将其他 Fastify 插件的实例挂载到请求对象上,供页面读取。
适用场景
- 在现有 Fastify API 服务中加入服务端渲染的 React 页面。
- 在同一个 Node.js 进程中同时提供 Next.js 前端与 Fastify 路由。
- 通过基于健康指标的错误返回,保护承载 Next.js 渲染的 Fastify 服务器免于过载。
快速上手
- 1
安装插件及 Next.js 和 React
npm i @fastify/nextjs next react react-dom - 2
在 pages/hello.js 中创建页面文件
- 3
注册插件,在 after 回调中调用 fastify.next('/hello'),然后监听 3000 端口
使用前须知
- 插件需与 Next.js 一同安装,它用于在现有 Fastify 服务器中加入 Next.js 渲染,而非替代 Next.js 自身的 Web 服务器。
- 大型 Next.js 项目在开发模式下可能超过 Fastify 默认 10 秒的插件超时,需要调大 pluginTimeout。
标签
常见问题
- fastify-nextjs 是什么?
- 为现有 Fastify 服务器提供 Next.js 与 React 服务端渲染支持的插件。 @fastify/nextjs 是一个 Fastify 插件,用于在已有的 Fastify 服务器中渲染 Next.js 页面。它并不会用 Fastify 替换 Next.js 自带的 Web 服务器,而是在 Fastify 实例上暴露 `next` 路由接口,让指定路由交由 Next.js 渲染。
- fastify-nextjs 可以免费使用吗?用的什么许可证?
- fastify-nextjs 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- fastify-nextjs 还在维护吗?
- 活跃维护中。fastify-nextjs 最近一次提交是在 2026年11月4日。
- fastify-nextjs 适合用来做什么?
- 在现有 Fastify API 服务中加入服务端渲染的 React 页面。 在同一个 Node.js 进程中同时提供 Next.js 前端与 Fastify 路由。 通过基于健康指标的错误返回,保护承载 Next.js 渲染的 Fastify 服务器免于过载。
- fastify-nextjs 怎么安装和运行?
- 安装插件及 Next.js 和 React: npm i @fastify/nextjs next react react-dom 在 pages/hello.js 中创建页面文件 注册插件,在 after 回调中调用 fastify.next('/hello'),然后监听 3000 端口
- 在哪里获取 fastify-nextjs?
- 源代码和安装说明在 GitHub 上:https://github.com/fastify/fastify-nextjs
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
面向 Next.js 的国际化(i18n)库,支持 ICU 消息语法、本地化日期数字格式和类型安全的翻译 Hook。
为 Next.js 应用添加视频的 React 组件,支持自动上传、优化与 CDN 分发。
无需 schema 或代码生成,即可在 TypeScript 中构建端到端类型安全的 API。
一个高性能、低开销的 Node.js Web 框架,支持插件架构、基于 Schema 的校验和内置日志。
Watt 是一个 Node.js 应用服务器,以 worker 线程运行任意框架的应用,提升多核利用率与可观测性。