Axios vs Superagent

xtabbas picture xtabbas · Oct 13, 2016 · Viewed 21.1k times · Source

If I use Axios and Superagent to make a call to the same api one after another I get Superagent's response first in the console logs in both cases i.e if I call one first than the other and vice versa. Does that mean one is faster than the other or is something else entirely?

getUser() {

  axios.get('/api/getuser')
    .then((res) => {
      console.log(err,res)          
    })
    .catch((err,res) => {
      console.log(err,res)          
    })

    request
        .get('api/getuser')
        .end((err, res) => {
          console.log(err,res)              
        });
  }

Answer

Nate picture Nate · Aug 31, 2017

The difference is unlikely to be related to the raw speed of the client. Both use Node’s HTTP library or the browser’s built-in XMLHttpRequest. Most likely what you’ve observed are slight differences in timing related to event handling.

I’d base my decision on other factors, like which API you like better, and library size (for a browser-side application).

Here’s a browser-side test case for Axios and SuperAgent: https://jsperf.com/axios-vs-superagent/ and here’s a server-side test: https://gist.github.com/natesilva/24597d954f392b21467b83403756f121

For me, on these tests, Axios is faster in the browser and SuperAgent is faster under Node.js.