我正在尝试使用 TideSDK 1.3.1-beta 在我的桌面应用程序中使用服务器发送事件。通过基于 webkit 的浏览器查看的代码在 localhost 上运行完美,但是通过 TideSDK 运行程序时,什么也没有发生。
我正在使用的 Javascript 是这样的:
<script>
var source=new EventSource("demo_sse.php");
source.onmessage=function(event)
{
document.getElementById("result").innerHTML+=event.data + "<br>";
alert(event.data);
}
</script>
demo_sse.php 页面如下所示:
<?php
header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');
$time = date('r');
echo "data: The server time is: {$time}\n\n";
flush();
?>
我知道这不仅仅是一些愚蠢的错误,因为就像我说的,它在浏览器中完美运行,但是当通过 TideSDK 运行时,什么也没有发生。我解决这个问题非常重要。如果有人可以提供任何见解,请告诉我。
PS:我注意到一些奇怪的事情:如果我在 EventSource 中使用“app”作为协议,例如EventSource("app://demo_sse.php");
程序在控制台输出有关预处理demo_sse.php
文件的行之前立即崩溃。