Remix.run没有使用node.js作为后端吗



我对Remix.run很兴奋,但有一件事我真的不明白。在框架的技术解释中,它说:

虽然Remix在服务器上运行,但它实际上不是一台服务器。它只是一个提供给实际JavaScript服务器的处理程序。

它建立在Web Fetch API而不是Node.js上。这使Remix能够在任何Node.js服务器(如Vercel、Netlify、Architect等(以及Cloudflare Workers和Deno Deploy等非Node.js环境中运行。

所以。。后端是否是Node.js服务器?如果不是。。它如何在后台执行JS?我认为上面的解释有点矛盾。

Remix是用许多不同的适配器构建的(不确定这是否是官方术语,但适配器的想法很合适(。这允许remix交换其架构的部分;适合";。这些适配器包的例子有remix vercel、remix express等。它们都用于将这些平台上请求/事件的不同接口转换为remix的请求/响应模型(从而获取(。

前面提到的所有适配器都是基于节点的环境,但Remix也有一些用于非节点环境的适配器。例如,remix clouflare workers是一个适配器,旨在使Cloudflare workers环境与remix配合良好。Cloudflare Workers并没有在Node上运行,事实上,它甚至不是服务器,只是由事件触发的javascript函数。工作人员直接在V8 Javascript引擎上运行,Chrome和Node使用该引擎来运行Javascript。

是的,Remix可以作为服务器在NodeJS环境中运行,但由于其适配器架构,它也可以为非NodeJS环境提供适配器,以及be(无服务器(功能等。

有趣的是,即使是remix react也是一个单独的包(适配器(,允许remix团队(或社区(在未来为其他前端框架实现适配器!

最新更新