Guzzle 6实时数据流:怎么样?

时间:2015-12-11 12:57:12

标签: php laravel guzzle

Project正在使用URL API,它每秒都会更新数据。通过使用Guzzle 6,如何在没有AJAX的情况下刷新浏览器中的数据?

    ...
    ...

    $un = 'admin';
    $pa = 'password';
    $base_uri = 'http://example.com:82';
    $uri1 = 'api/instant/connectopc';
    $uri2 = 'api/instant/displaydata?site=SITE';

    $cookieFile = 'jar.txt';
    $cookieJar = new FileCookieJar($cookieFile, true);
    $client = new Client([

        'base_uri' => $base_uri,
        'auth'=>[$un, $pa],
        'cookie'=>$cookieJar,
        'curl' => [
            CURLOPT_COOKIEJAR => 'jar.txt',
            CURLOPT_COOKIEFILE => 'jar.txt'
        ],

    ]);

   $connect = $client->get($uri1);  

   //live data to be refresh every seconds. How to do?

   $live= $client->get($uri2, ['cookies' => $cookieJar]); 
   ...

如何完成实时数据流?

2 个答案:

答案 0 :(得分:2)

一旦浏览器关闭连接,您就无法从同一页面进行任何实时流式传输。你必须打开另一个连接。例如,如果您需要实时数据交换,请通过Ajax或其他技术WebSockets

答案 1 :(得分:0)

你无法使用PHP进行实时流式传输..你需要使用像NodeJS这样的编程语言:) .. PHP在结束时结束连接:)