L oop jQuery. ajax пост-ответ - 504 Тайм-аут шлюза - Тайм-аут, ожидающий вывода из сценария CGI - PullRequest
0 голосов
/ 21 апреля 2020

Здесь мой l oop (он повторяется 6 раз):

pnames.forEach(async function (item, index) {
   await uploadToMarketplace('create','n11',item.id-1,item.id,mPanel,false);
});

Выше l oop вызывает uploadToMarketplace функцию, и эта функция содержит:

const data = await jQuery.ajax({
           type: "POST",
           url: url,
           dataType: 'json',
           data:
           {
             firstProduct: firstProduct,
             action: action,
             onSale: onSale
           }
         });

Так jQuery. ajax выполняется 6 раз. Каждый вызов занимает около 10 раз, и после 3-го, 4-го выполнения (или примерно через 30 секунд) я получаю сообщение об ошибке ниже.

504 Тайм-аут шлюза Шлюз не получил своевременный ответ от вышестоящего сервера или приложение.

Я связался со своим хостинг-провайдером, и они сказали мне, что в виртуальном хостинге существует ограничение по времени ожидания, и ошибка на стороне хостинга выглядит следующим образом:

[ Вс 22 марта 12: 12: 48.407552 2020] [: warn] [pid 45540] [клиент 87.118.135.66:49436] Тайм-аут ожидания вывода из скрипта CGI / home / canni / public_html / wp-content / plugins / promc / templates / createProduct. php, реферер: https://www.example.com/wp-admin/admin.php?page=my_plugin

Сводка:

Повторение вышеуказанной функции 6 раз - каждый запрос - время отклика составляет в среднем 10 секунд.

Однако сервер относится ко мне так, как будто я делаю 1 большой запрос вместо 6 отдельных запросов, и, следовательно, я не могу избежать ошибки тайм-аута.

Вопрос:

Как избежать ошибки тайм-аута. (PS: настройки сервера для общего хостинга, и я не могу его изменить)

...