Fatcher
Fatcher 是一个轻量的 HTTP 请求库,基于 Fetch API,支持在浏览器和 NodeJS 环境中使用。它提供插拔式中间件、TypeScript 支持、响应缓存等功能,旨在扩展原生 fetch 的功能并提升开发体验。
<div align="center"> <img alt="Fatcher logo" src="https://github.com/fatcherjs/fatcher/raw/master/packages/docs/public/fatcher.png" height="120" width="120" /></div><div align="center"><h1>Fatcher</h1></div>在浏览器和nodeJS中优雅地发送 fetch 请求.## 结构<img width="1594" alt="fatcher" src="https://user-images.githubusercontent.com/35361626/180909174-49880321-a9b8-44b1-9ea8-1980f061be9f.png">## 链接 [传送门](https://github.com/fatcherjs/fatcher)## 描述fatcher 是一个轻量的 HTTP 请求库, 它基于 fetch,它允许我们在浏览器与 NodeJS 环境中使用原生的fetch来进行网络请求。fatcher 目的是在于拥抱标准库的 fetch 的同时,提供 fetch 中一些没有提供的功能,以及让功能更好的拓展与复用。## 核心功能- TypeScript 支持- 基于 Fetch API- 插拔式中间件- 体积最小化- 不可变上下文- Web Streams API 支持- NodeJS 与 浏览器行为一致- 简单易用的拦截器## 拓展功能- Service Worker 请求 Mock(进行中)- 取消请求- 超时取消- 并发限制- 响应缓存- 下载进度- 响应JSON转换- FormData请求支持## 后续计划1. 请求重试2. 轮询请求3. Service Worker 请求 Mock4. Swagger JSON 生成 Mock 请求5. 请求管道6. 未完待续(详情查看 [Project](https://github.com/fatcherjs/fatcher/projects/2))