Next.js有无快递
Next.js with or without express
我最近开始将使用 create-react-app 制作的项目迁移到 next.js,但我不确定应该如何迁移它的后端。
我目前有一个快速服务器作为我的后端,但我在 next.js 中看到在 api
文件夹中使用无服务器功能有性能优势。我的问题是:我是将 express 服务器迁移到无服务器函数还是保留它并与 next.js 一起使用更好?另外,在无服务器函数中使用 express 是个坏主意吗?
我看过很多关于 next.js 的教程,许多教程都使用 express,尽管 next.js 文档建议不要这样做,所以我不确定我是否在这里遗漏了一些优势。
[编辑]:我的后端基本上由 getting/updating 数据库内容和上传文件的路由组成,带有 JWT 身份验证中间件。
我尽量避免使用 express.js。不仅是为了性能优势,还因为它需要担心多一层调试和维护。
但是,有些情况还是会迫使你依赖快递:
- 一些(尤其是旧的)插件会依赖它。例如,直到最近,支持 multi-language 的 next-18next 插件需要 express.js 才能工作。这可能就是为什么一些教程和示例也会使用 express 的原因,如果他们使用这样的插件的话。幸运的是,在最近的一次更新中,next-i18next 团队设法消除了这一要求,您可以在不依赖 express 的情况下使用该插件。希望随着时间的推移,会有更多的插件效仿,尽管在教程、文档和示例赶上来之前还需要时间。
- 根据您的主机 set-up,您可能需要 express.js 来管理资产缓存。如果您在专为托管 next.js 应用程序而构建的 Vercel 上托管,那么这将不是问题,因为您可以在该控制台中管理托管,我认为这也比这个想法更可取不得不维护一个快速服务器。
总而言之,如果您在 Vercel 上托管或者不需要担心资产缓存,并且没有使用任何依赖 express.js 的插件,那么设置 express 就是一种浪费能量。
我最近开始将使用 create-react-app 制作的项目迁移到 next.js,但我不确定应该如何迁移它的后端。
我目前有一个快速服务器作为我的后端,但我在 next.js 中看到在 api
文件夹中使用无服务器功能有性能优势。我的问题是:我是将 express 服务器迁移到无服务器函数还是保留它并与 next.js 一起使用更好?另外,在无服务器函数中使用 express 是个坏主意吗?
我看过很多关于 next.js 的教程,许多教程都使用 express,尽管 next.js 文档建议不要这样做,所以我不确定我是否在这里遗漏了一些优势。
[编辑]:我的后端基本上由 getting/updating 数据库内容和上传文件的路由组成,带有 JWT 身份验证中间件。
我尽量避免使用 express.js。不仅是为了性能优势,还因为它需要担心多一层调试和维护。
但是,有些情况还是会迫使你依赖快递:
- 一些(尤其是旧的)插件会依赖它。例如,直到最近,支持 multi-language 的 next-18next 插件需要 express.js 才能工作。这可能就是为什么一些教程和示例也会使用 express 的原因,如果他们使用这样的插件的话。幸运的是,在最近的一次更新中,next-i18next 团队设法消除了这一要求,您可以在不依赖 express 的情况下使用该插件。希望随着时间的推移,会有更多的插件效仿,尽管在教程、文档和示例赶上来之前还需要时间。
- 根据您的主机 set-up,您可能需要 express.js 来管理资产缓存。如果您在专为托管 next.js 应用程序而构建的 Vercel 上托管,那么这将不是问题,因为您可以在该控制台中管理托管,我认为这也比这个想法更可取不得不维护一个快速服务器。
总而言之,如果您在 Vercel 上托管或者不需要担心资产缓存,并且没有使用任何依赖 express.js 的插件,那么设置 express 就是一种浪费能量。