Faraz Kelhini
Nov 29, 2023 ⋅ 12 min read

How to make HTTP requests with Axios

Faraz Kelhini JavaScript developer.

Recent posts:

Using CRDTs To Build Collaborative Rust Web Applications

Using CRDTs to build collaborative Rust web applications

CRDTs, or conflict-free replicated data types, is a concept that underlies applications facing the issue of data replication across a […]

Mario Zupan
Feb 23, 2024 ⋅ 15 min read
Guide to Using TensorFlow in Rust

Guide to using TensorFlow in Rust

We explore the fusion of TensorFlow and Rust, delving into how we can integrate these two technologies to build and train a neural network.

Rosario De Chiara
Feb 22, 2024 ⋅ 8 min read
Using Signaldb With React

Using SignalDB with React: A complete guide

SignalDB enables automatic data synchronization between your components and a local in-memory or persistent database.

Antonello Zanini
Feb 20, 2024 ⋅ 6 min read
Guide To Next Js Layouts And Nested Layouts

A guide to Next.js layouts and nested layouts

Understanding how layouts, nested layouts, and custom layouts work in Next.js is crucial for building complex, user-friendly projects.

Ibadehin Mojeed
Feb 19, 2024 ⋅ 12 min read
View all posts

5 Replies to "How to make HTTP requests with Axios"

  1. You should also note that axios can also be used on the server with node.js – probably one of my favorite higher level HTTP libraries.

    One of the better qualities when using it on the server is the ability to create an instance with defaults – for example sometimes I’ll need to access another REST API to integrate another service with one of our products, if there is no existing package or the existing package doesn’t support the end points I need to access I’ll just create an abstraction which internally uses a http client created by axios.create():

    const instance = axios.create({
    baseURL: ‘https://api.example.org/’,
    headers: {‘Some-Auth-Header’: ‘token’}


  2. This post says nothing about the responseType parameter, which can stream a large binary file.

  3. Got a question about accessing the data outside of the axios.spread. What I am doing is using node to collate some data from disparate API calls and return one dataset. I do the two calls, create a new object and return it.
    The new object exists within the AXIS code block but when I try and view outside it is blank.

    I also tried to do this in a function with a return but it also returns a blank.

    let retData = {};
    .all([reqDevInfo, reqConInfo])
    axios.spread((resDevInfo,resConInfo ) => {
    retData.status = 200;
    retData.deviceName = deviceName
    retData.tenant = resDevInfo.data.results[0].tenant.name;
    retData.ru = resDevInfo.data.results[0].position;
    retData.TServerName = resConInfo.data.results[0].connected_endpoint.device.name;
    retData.TServerPort = resConInfo.data.results[0].cable.label;
    console.log(retData); // this print the expected data

    .catch(errors => {
    // react on errors.


    console.log(retData) // this is blank

  4. How can I build or append data elements to a post request before I send the request?
    I have optional 4 optional parameters and there are too many combinations to code for all the variations.

Leave a Reply