I'm having a problem with my fetch() call not working correctly. I have a recursion method that calls itself within this function, but once it passes the if statement, the data itself is not being resolved to the .then() call below. I would like to keep the recursion method within this function. Because the system that this function is calling will change the data.result to a different result that is not null. I just don't know when that will happen, hence that is why I'm using the recursion method.
var someToken = "actually token";
function getResult(getToken) {
return new Promise((resolve, reject) => {
fetch(url, {
headers: {
"Authorization": something,
"Jenkins-Crumb": getToken
},
redirect: 'follow',
}).then(response => {
return response.json()
}).then(data => {
if (data.result == null) {
console.log('retrieving data')
getResult(getToken)
} else if (data.result == "SUCCESS") {
console.log('success')
resolve(data)
}
}).catch(err => {
reject(err)
})
})
}
getResult(someToken).then(data => {
console.log(data)
}).catch(err => console.log(err))