Ich möchte einen Axios-Aufruf machen, wenn der vorherige Aufruf einen bestimmten Rückgabecode zurückgegeben hat, bevor der nächste erneut versucht wird. So etwas wie der Ausschnitt unten. Ich habe versucht, Axios-Retry, aber ich habe es nur geschafft, die Anfrage erneut zu versuchen, wenn es fehlschlägt, keinen Anruf zu tätigen, bevor Sie die Anfrage wiederholen. Vielen Dank für jede Hilfeaxios - Führen Sie einen Anruf aus, bevor Sie eine Anfrage wiederholen
axios
.get('http://myapilink.com/users', {
headers: {
'access_token': access_token,
'Content-Type': 'application/json'
}
})
.then(function (response) {
// successfull call
})
.err(function (error) {
// fire an another axios call before retrying the GET request above
axios
.post('http://myapilink.com/refresh_token', {
headers: {
'refresh_token': refresh_token,
'Content-Type': 'application/json'
}
})
.then(function (response) {
// successfull call - retry the GET request above
})
.err(function (error) {
// handle manual user login because of expired refresh_token
})
})
Weil jede einzelne axios Anfrage ist asynchron, müssen Sie die Wiederholung entweder async durchführen oder dieses Verhalten im Backend behandeln (dh wenn die erste Axios-Anfrage im Backend fehlschlägt, machen Sie etwas anderes, bevor Sie eine Antwort senden) – Jayce444
Nehmen Sie den asynchronen Wiederholungsversuch vor ist in Ordnung, aber ich kämpfe auf, wie man es implementiert, ohne den Code des GET-Aufrufs manuell zu kopieren – DavidN