Задать вопрос
@del993788

Как продолжить выполнение скрипта только после определённого ответа с culr?

Здравствуйте.
Ситуация такая: отправляю запрос. В ответе может быть либо:
{"Статус: 2"} - Ответ подготавливается.
{"Статус: 0", "Данные"} - всё хорошо, данные сформированы.

Как сделать, чтобы скрипт продолжил выполнятся только после получения ответа? И если в ответе Статус: 2, то он опять начнёт ждать ответ.
Вариант со sleep(), который предлагает гугл, мне кажется очень странным, ведь ответ может идти и 1 секунду, а может и 10 секунд. Не угадаешь такое.

Мне это нужно, потому что нужно дальше работать с этими данными, а на деле получается так, что ответ ещё не получен, а скрипт уже выполнил второй этап (разумеется с ошибкой).

p.s. статус может быть сразу 0. Статус 2 бывает, но не всегда.
  • Вопрос задан
  • 206 просмотров
Подписаться 2 Простой 10 комментариев
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Skillbox
    PHP-разработчик. Базовый уровень
    3 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
А кроме цикла ожидания здесь ничего и не сделать. Просто в бесконечном цикле проверяете состояние, если статус 0, то покидаете цикл, если 2, то делаете задержку (sleep) и повторяете запрос.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы