DEV Community

Cover image for Do you prefer Fetch or Axios?
Madza
Madza Subscriber

Posted on

Do you prefer Fetch or Axios?

One of the fundamental tasks of any web application is to communicate with servers through the HTTP protocol. This can be easily achieved using Fetch or Axios.

The Fetch API is built-in most modern browsers and provides a fetch() method defined on the window object, while Axios is a specific 3rd party Javascript library you must install manually.

Which method do you usually use and do you think adding a library (around 4.4KB gzip) is worth it for the extra features it brings?

Latest comments (28)

Collapse
 
pontakornth profile image
Pontakorn Paesaeng

I prefer fetch API as I expect user to have slightly modern browser. I don't want to support outdated browser.

Collapse
 
saisandeepvaddi profile image
Sai Sandeep Vaddi • Edited

Axios.

API things like,

  1. No need to serialize body explicitly by the developer.
  2. Automatic wrapping in data object which I guess good security practice as well.
  3. Reusable instances with axios.create.
  4. Interceptors API is amazing and it really helps if you want to customize request or responses.

More things.

Also, works really well with TypeScript which other user has mentioned.

Collapse
 
kalashin1 profile image
Kinanee Samson

Most old browser will not understand fetch API and that is where, axios shines. Axios accommodates fetch API. However i think fetch API makes code look neater and a Lil bit synchronous. If I want compatibility, I'll pick axios else its fetch.

Collapse
 
madza profile image
Madza

Fair enough 😉

Collapse
 
yoursunny profile image
Junxiao Shi • Edited

$.getJSON()
$.getScript()

Don't forget $(selector).load(uri).

All of these are better than my first AJAX program: I didn't know JavaScript has closures, so that every XMLHttpRequest object is a global variable.
It's 2006, when everyone was using IE6, I just read a book about AJAX, I haven't heard about Prototype.js, and jQuery existed for less than a year.

Collapse
 
bombillazo profile image
Hector Ayala • Edited

I haven't tried fetch yet, but axios is a delight to use, and I already know what to expect with it.

Collapse
 
hhsm95 profile image
Hugo Sandoval

Axios has more browsers compatibility.

Collapse
 
filosganga profile image
Filippo De Luca

Axios

Collapse
 
angelmtztrc profile image
Angel Martinez

I use Fetch when the project is small or when I know it will not grow much. I prefer to use Axios in projects where requests carry more information since Axios allows you to configure an instance of it.

Collapse
 
pavelloz profile image
Paweł Kowalski

fetch + node-fetch.
Because fetch is native, and node-fetch has the same syntax, so i can copy paste code from front to back.

Collapse
 
aghost7 profile image
Jonathan Boudreau

For backend: superagent
For frontend: fetch