这里写自定义目录标题
背景
笔者一直找一个轻量级的http客户端,需要同时支持浏览器环境和node环境,因为是作为内嵌模块,要求文件轻量级,功能要求简单,需要支持最简单的restful调用,支持json,form内容格式,支持Primise
遇到的坑
做常用的client一般都是:
- superagent
- axios
- needle
- request
- got
- axios-mini
等等
这些包非常优秀,大都同时支持浏览器和node,但是动则几百KB,甚至几MB,过于庞大
轻量级
于是笔者找一些轻量级的包:
- http.min : 7KB,node only
- centra :10KB, node only
- reeq : 10KB , 浏览器only
- send-request :15KB, node only
- unirest : 轻量级,开玩笑。。
- phin: 12kb,只支持node
- ddflyio : 490KB 开玩笑
- gotch :几十KB,只支持浏览器
- phax : 12KB,只支持node
10.lightning-request :20KB,only node - awi : 200KB ,轻量?
- xeta : 170KB,轻量?
- requesta : 12KB,node only
- luch : 230KB , 轻量?
- phax : 17KB,浏览器 only
总而言之,比较绝望,还是自己实现一个轻量级的client:

这篇博客介绍了作者在寻找轻量级HTTP客户端时遇到的问题,如现有库体积过大,不满足轻量化需求。因此,作者创建了mini.req.js,一个仅5KB以下的客户端,它同时支持浏览器和Node环境,具备Promise和主流接口调用功能,并能自动根据环境切换内部使用的reeq和centra。提供了源码链接供读者查看。
最低0.47元/天 解锁文章
872





