+
95
-

回答

undici 是一个基于 Node.js 的 HTTP 客户端。它提供了比内置的 http 和 https 模块更高级的 API。

undici 最主要的功能是:

1. 支持 HTTP/2 和 HTTP/3

2. 支持管道和取消请求

3. 支持重定向

4. 支持超时

5. 支持代理

undici 实际上提供了比 Node.js 内置的 http/https 模块更丰富的功能。许多 Node.js 应用使用 undici 来替代 http/https,以获取更好的 HTTP 客户端体验。

与 fetch 的关系:

fetch 是浏览器环境下的 HTTP 客户端 API,undici 是 Node.js 环境下的 HTTP 客户端。

虽然两者的目的都是发送 HTTP 请求,但是:

1. fetch 是 ES6 提供的 API,运行在浏览器中;undici 是一个第三方库,运行在 Node.js 中

2. fetch 的 API 设计受浏览器影响,更简单易用;undici 的 API 设计更贴近 Node.js 风格,提供了更丰富的功能

3. fetch 只支持 HTTP/1.1;undici 支持 HTTP/2 和 HTTP/3

所以,总体来说,undici 是 Node.js 环境下一个更强大的 HTTP 客户端选择,相比于 Node.js 内置的 http/https 模块。而 fetch 是浏览器环境下的 HTTP 客户端 API。

网友回复

我知道答案,我要回答