Почему мой сеанс отменяется после сброса данных? - PullRequest
0 голосов
/ 05 мая 2020

в рамках проекта мне пришлось создать несколько асинхронных вызовов и систему мониторинга через индикатор выполнения.

Запускаются асинхронные вызовы, и во время их выполнения они обновляют сеанс, содержащий процентное значение. Второй асинхронный вызов заботится о чтении процентного значения и обновлении индикатора выполнения.

Сценарий, который заботится о чтении, запускается EventSource, но я столкнулся с трудностями, когда вставляю необходимую функцию flu sh для отправки информации на javascript.

Фактически, если я удалю flu sh (), информация не будет отправлена ​​на javascript, но я могу правильно прочитать в сеансе и результат session_status () равно 2. В случае, если я вставляю flu sh () данные отправляются правильно, но я не могу читать в сеансе, и session_status () возвращает 1.

header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');

require_once '../../../../config/system.config.php'; // Define some constants
require_once '../../../../config/header.config.php'; // Include Classes


while (true) {

    ob_start();

    $_Response -> executeFunction('AsyncOperation', 'getActiveTasks', NULL);

    echo "data: ".$_Response -> serialize()."\n\n";

    ob_end_flush();
    flush();

    sleep(10);

}

Почему? Помогите мне, потому что я уже не знаю куда go.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...