我正在学习JavaScript,并且可以看到在多个大型项目中,SuperAgent用于HTTP请求。我将Axios用于学习目的,但想知道是什么使SuperAgent与Axios不同?
答案 0 :(得分:2)
axios的星星比超级代理check here
多如果您使用的是前端,axios可能会更受欢迎,例如vue使用axios,我在做后端,无论哪种都可以。
但是,就像Axios vs Superagent中的一个答案说:“我将基于其他因素做出决定,例如您更喜欢哪种API,以及库的大小”,我尝试了两者,最后选择了 supergent b / c超级代理具有build-in retry
axios不提供重试https://github.com/axios/axios/issues/164。我真的不喜欢引入另一个模块以进行重试的想法,更不用说现在已经有两个不同的模块,axios-retry
和retry-axios
。
此外,通过我的有限测试,此问题https://github.com/axios/axios/issues/553尚未完全解决。
答案 1 :(得分:1)
superagent
和axios
是HTTP客户端库。它们都非常成熟,两者之间的选择最终取决于偏好。这是使用每个库使用JSON正文发出POST
请求的样子:
// superagent
await request
.post('/to/my/api') // URI
.set('Authorization', authorizationKey) // Header
.send({ foo: 'bar' }) // Body
// then creates a promise that returns the response
.then(res => res.body)
/* axios */
// axios exclusively returns promises
// URI, body, request options are provided in one call
await request.post('/to/my/api', {
foo: 'bar'
}, {
headers: {
Authorization: authorizationKey
}
})