你好,我正在尝试使用php进行服务器发送事件(SSE),我有一个https网址,可以获取实时流数据。以下是我的脚本,我正在尝试在无限循环中使用。
PHP:
<?php
while(1)
{
$get_stream_data = fopen('https://api.xyz.com:8100/update-stream/connect', 'r');
if($get_stream_data)
{
$stream_data = stream_get_contents($get_stream_data);
$save_stream_data = getStreamingData($stream_data);
if($save_stream_data == true)
{
continue;
}
}
else
{
sleep(1);
continue;
}
}
function getStreamingData($stream_data)
{
$to = "accd@xyz.com";
$subject = "Stream Details";
$msg = "Stream Details : ".$stream_data;
$headers = "From:streamdetail@xyz.com";
$mailsent = mail($to,$subject,$msg,$headers);
if($mailsent){
return true;
}else {
return false;
}
}
?>
错误:
Warning: fopen(https://api.xyz.com:8100/update-stream/connect): failed to open stream: Connection timed out in /home/public_html/get_stream_data/index.php on line 4
服务器实时更新数据,但我无法通过我的端口获取数据。
我使用以下命令在命令提示符中检查了实时流媒体。
CURL
curl --get 'https://api.xyz.com:8100/update-stream/connect' --verbose