Axios Delete request with body and headers? Axios Delete request with body and headers? reactjs reactjs

Axios Delete request with body and headers?


So after a number of tries, I found it working.

Please follow the order sequence it's very important else it won't work

axios.delete(URL, {  headers: {    Authorization: authorizationToken  },  data: {    source: source  }});


axios.delete does support a request body. It accepts two parameters: url and optional config. You can use config.data to set the request body and headers as follows:

axios.delete(url, { data: { foo: "bar" }, headers: { "Authorization": "***" } });

See here - https://github.com/axios/axios/issues/897


Here is a brief summary of the formats required to send various http verbs with axios:

  • GET: Two ways

    • First method

      axios.get('/user?ID=12345')  .then(function (response) {    // Do something  })
    • Second method

      axios.get('/user', {    params: {      ID: 12345    }  })  .then(function (response) {    // Do something  })

    The two above are equivalent. Observe the params keyword in the second method.

  • POST and PATCH

    axios.post('any-url', payload).then(  // payload is the body of the request  // Do something)axios.patch('any-url', payload).then(  // payload is the body of the request  // Do something)
  • DELETE

    axios.delete('url', { data: payload }).then(  // Observe the data keyword this time. Very important  // payload is the request body  // Do something)

Key take aways

  • get requests optionally need a params key to properly set query parameters
  • delete requests with a body need it to be set under a data key