Как запустить несколько запросов ajax одновременно - PullRequest
0 голосов
/ 20 июня 2020

У меня есть запрос AJAX, который запускает событие Laravel. Сразу после вызова первого AJAX у меня есть еще один AJAX, который будет вызван немедленно.

Однако моя проблема в том, что второй AJAX не вызывается, пока не завершится первый возврат. Есть ли способ запустить мой 2-й AJAX до завершения 1-го?

1-й AJAX добавляет записи в БД, однако 2-й AJAX используется для проверки производительности / распечатки журналов относительно того, что происходит.

Если требуется код, дайте мне знать. Я думал, что код не нужен.

Пример того, как мой ajax выглядит

        $.ajax({
            url: '{{route('job-updates')}}',
            type: 'GET',
            dataType: 'json',
            headers: {
                'X-CSRF-TOKEN': "{!! csrf_token() !!}"
            },
            data: {},
            async : 'false',
        }).always(function (response) {
            console.log(response);

            if (response.message === 'no_job') {
                ajaxRunning = false;
            }

            else if (ajaxRunning) {
                //After 5 seconds fire the update
                setTimeout(function () {
                    getJobUpdates()
                }, 5000);
            }
        });

1 Ответ

0 голосов
/ 20 июня 2020

Вы можете использовать обещания для такого рода действий

function functionOne() {
    return $.ajax({})    
}

function functionTwo() {
    return $.ajax({})    
}

Promise.all([
    functionOne(),
    functionTwo(),
]).then(function() {
    
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...