I am trying to call another service from my express app using axios (also tried node-fetch)
So, when I call the service using curl, soapui or swagger it works.
curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' -d '"02"' 'http://example.com/api/v1/something'
However when I try using
axios.put('http://example.com/api/v1/something', '"03"')
.then((response) => {
res.sendStatus(200);
})
.catch((error) => {
console.log(error);
res.sendStatus(500);
});
I get "Request failed with status code 415"
Fixed by adding Content-Type in the headers
axios({
method: 'PUT',
url,
data: JSON.stringify(req.body),
headers:{'Content-Type': 'application/json; charset=utf-8'}
})
.then((response) => {
res.sendStatus(200);
})
.catch((error) => {
logger.error(error);
res.status(500).send(error);
});