【重点突破】—— umi-request 基于fetch的网络请求库(转)

umi-request是为了解决中台业务应用开发中请求库不统一、接口设计混乱和文档维护不便等问题,提供统一API调用的HTTP请求库。它基于fetch,简化了请求处理,并包含了拦截器、中间件机制等特性。与fetch和axios相比,umi-request提供了更丰富的功能,如URL参数序列化、请求超时处理和取消请求等。它还支持快速配置,降低了开发者的使用门槛。
摘要由CSDN通过智能技术生成

背景

在做中台业务应用开发的过程中,我们发现在请求链路上存在以下问题:

  1. 请求库各式各样,没有统一。 每次新起应用都需要重复实现一套请求层逻辑,切换应用时需要重新学习请求库 API。
  2. 各应用接口设计不一致、混乱。 前后端同学每次需重新设计接口格式,前端同学在切换应用时需重新了解接口格式才能做业务开发。
  3. 接口文档维护各式各样。 有的在语雀(云端知识库)上,有的在 RAP (开源接口管理工具)上,有的靠阅读源码才能知道,无论是维护、mock 数据还是沟通都很浪费人力。

针对以上问题,我们提出了请求层治理,希望能通过统一请求库、规范请求接口设计规范、统一接口文档这三步,对请求链路的前中后三个阶段进行提效和规范, 从而减少开发者在接口设计、文档维护、请求层逻辑开发上花费的沟通和人力成本。其中,统一请求库作为底层技术支持,需要提前打好基地,为上层提供稳定、完善的功能支持,基于此,umi-request 应运而生。

umi-request

umi-request 是基于 fetch 封装的开源 http 请求库,旨在为开发者提供一个统一的 API 调用方式,同时简化使用方式,提供了请求层常用的功能:

  • URL 参数自动序列化
  • POST 数据提交方式简化
  • Response 返回处理简化
  • 请求超时处理
  • 请求缓存支持
  • GBK 编码处理
  • 统一的错误处理方式
  • 请求取消支持
  • Node 环境 http 请求
  • 拦截器机制
  • 洋葱中间件机制

与 fetch、axios 的异同?

umi-request 底层抛弃了设计粗糙、不符合关注分离的 XMLHttpRequest,选择了更加语义化、基于标准 Promise 实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值