PHP / Ajax $ .get调用 - 将数据作为输出返回,而不是等到收到所有数据

时间:2014-06-11 06:20:12

标签: php jquery ajax

我在回复last question后发现了Ajax,提供的代码运行良好:

<table class="my-data-table">
    <tr>
        <td class="col-1"></td>
        <td class="col-2"></td>
        <td class="col-3"></td>
    </tr>
</table>
<script>
$.get( "/path_to_table_data.php", function on_table_data_load( data ) {
    $( ".my-data-table .col-3" ).html( data );
});
</script>

这会在外部页面完成执行后加载内容,即使此外部页面在加载时输出内容也是如此。

有没有办法让内容返回到调用页面,因为内容是由外部页面输出的,而不是等待它完成?

1 个答案:

答案 0 :(得分:0)

如果您的数据非常大,您可以从服务器向客户端发送parital数据,而不是使用ajax请求。当您在服务器端处理数据时,很难在js端读取部分响应。所以,我建议你使用websocket的websocket实现。您可以看到Websockets是什么,并查看php here

中的示例

更新:流网址

<?php 
    $handle = fopen("path_tu_html_url", "r");
    while (!feof($handle)) { 
        $line = stream_get_line($handle, 1000000, "\n"); 
    } 
?>

这将在php端