header("Access-Control-Allow-Origin:*");
header('X-Accel-Buffering: no');
header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');
ob_end_clean();
ob_implicit_flush(1);
$idx = 0;
while(1) {
$idx++;
$data = [
'id' => $idx,
'timestamp' => time(),
'message' => '当前时间是:' . date('Y-m-d H:i:s')
];
returnData($data, 'message', $idx);
sleep(1);
}
function returnData($data, $event = 'message', $id = 0, $retry = 0) {
$str = '';
if ($id > 0) {
$str .= "id: {$id}" . PHP_EOL;
}
if ($event) {
$str = "event: {$event}" . PHP_EOL;
}
if ($retry > 0) {
$str .= "retry: {$retry}" . PHP_EOL;
}
if (is_array($data)) {
$data = json_encode($data);
}
$str .= "data: {$data}" . PHP_EOL;
$str .= PHP_EOL;
echo $str;
}
var es = new EventSource('/message.php');
es.addEventListener('message', function (res) {
let data = JSON.parse(res.data);
$("#esContent").text(data.message)
})
评论
评论功能已经关闭!