php js 终止,使用Server-Sent Events(和Javascript / PHP)的连接会立即停止

昨天我潜入了Server-Sent活动,因为它们是为我正在创建的在线游戏创建新闻源的好方法.我有一个可以订阅我的feed的工作脚本,以及一个可以在几分钟内从

MySql数据库中提取新闻源的脚本,但由于某种原因,它每次都会丢失连接…(并且每3秒重新连接一次,并没有任何结果比仅使用具有特定时间间隔的AJAX更好的例子)

我正在使用的javascript:

var source = new EventSource('http://theobg.itselementary.site50.net/gamefeed.php');

source.onmessage = function(e) {

$("#gamefeed").html(e.data);

}

我正在使用的PHP:

header('Content-Type: text/event-stream');

header('Cache-Control: no-cache');

header('Connection: keep-alive');

function sendMsg($id, $msg) {

echo "id: $id" . PHP_EOL;

echo "data: $msg" . PHP_EOL;

echo PHP_EOL;

ob_flush();

flush();

}

//The file for connecting to my database here...

$gameid = 1;

$serverTime = time();

//Some mysql query to get the gamefeed from the database here..., gamefeed is structured like this: NEWS&OTHERNEWS&OLDERNEWS&EVENOLDERNEWS

sendMsg($serverTime, $gamefeed);

?>

我已经浏览了整个互联网,但一切似乎与我一起工作正常,除了连接没有“保持活着”,我不知道为什么那样……有人可以帮助我吗?

提前致谢,

Dalionzo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值