Я пытаюсь повторить запросы после неудачного. Однако я хочу отложить запрос. Я не смог сделать работу setTimeout
, потому что моя функция проверяет возвращенный json (и рекурсивный), а setTimeout не возвращает возвращаемое значение обратного вызова.Запросы на повторную загрузку узла
function makeRequest(req, nextjson, attempts){
// I'm using a different method here
get({url: "http://xyz.com", json: nextjson},
function(err, json2){
if(err===200){
return json2
} else {
// json2 might be bad, so pass through nextjson
if(attempts < 5){
return makeRequest(req, nextjson, attempts+1)
} else {
// pass back the bad json if we've exhausted tries
return json2
}
}
})
}
Я хочу отложить выполнение рекурсивного вызова. Кроме того, я немного смущен этим кодом. Путь слишком необходим. Если у вас есть способы его очистки, я бы тоже признал, что тоже