Цикл неправильно написан.
Если в начало цикла затолкать это строку:
console.log('Cycle');
А в метод always это:
console.log('Always');
То можно увидеть, что в консоль фразы "cycle" и "always" будут выводиться не по очереди, а хаотично.
Это будет происходить потому, что while не дожидается завершения запроса, а начинает следующий цикл немедленно после выполнения кода своего тела.