2025-04-01
5480
#javascript
Faraz Kelhini
3494
116
Apr 1, 2025 ⋅ 19 min read

Axios in JavaScript: How to make GET, POST, PUT, and DELETE requests

Faraz Kelhini JavaScript developer.

Recent posts:

How to fix React routing loopholes with the React Router Middleware

How to fix React routing loopholes with the React Router Middleware

Learn how React Router’s Middleware API fixes leaky redirects and redundant data fetching in protected routes.

Ikeh Akinyemi
Nov 13, 2025 ⋅ 3 min read
How I used Mastra to build a prize-winning RAG agent

How I used Mastra to build a prize-winning RAG agent

A developer’s retrospective on creating an AI video transcription agent with Mastra, an open-source TypeScript framework for building AI agents.

Chinwike Maduabuchi
Nov 13, 2025 ⋅ 12 min read

Ensuring frontend data integrity with TanStack DB transactions

Learn how TanStack DB transactions ensure data consistency on the frontend with atomic updates, rollbacks, and optimistic UI in a simple order manager app.

Emmanuel John
Nov 13, 2025 ⋅ 11 min read
the replay november 12

The Replay (11/12/25): Stop making these useEffect mistakes

Discover what’s new in The Replay, LogRocket’s newsletter for dev and engineering leaders, in the November 5th issue.

Matt MacCormack
Nov 12, 2025 ⋅ 33 sec read
View all posts

5 Replies to "Axios in JavaScript: How to make <code>GET</code>, <code>POST</code>, <code>PUT</code>, and <code>DELETE</code> requests"

  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’}
    });

    Cheers,
    Chris

  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 = {};
    axios
    .all([reqDevInfo, reqConInfo])
    .then(
    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.error(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

Would you be interested in joining LogRocket's developer community?

Join LogRocket’s Content Advisory Board. You’ll help inform the type of content we create and get access to exclusive meetups, social accreditation, and swag.

Sign up now