2016-09-16 37 views
0

每隔幾秒鐘,我的代碼就會寫一個png到一個http服務器。我希望包括(通過瀏覽器端的JavaScript或標頭什麼的)某種標記,這將使瀏覽器每500毫秒自動刷新一次。反覆將PNG發送到服務器。我想告訴傳入的瀏覽器刷新定時器

另外,我想只是自動更新頁面,以便客戶端不需要刷新。我將如何做這些?

var arDrone = require('ar-drone'); 
var http = require('http'); 

console.log('Connecting png stream ...'); 


var client = arDrone.createClient(); 
var pngStream = client.getPngStream(); 


var lastPng; 
pngStream 
    .on('error', console.log) 
    .on('data', function(pngBuffer) { 
    lastPng = pngBuffer; 
    }); 
client.config('video:video_channel', 0); 


var server = http.createServer(function(req, res) { 
    if (!lastPng) { 
    res.writeHead(503); 
    res.end('Did not receive any png data yet.'); 
    return; 
    } 

    res.writeHead(200, {'Content-Type': 'image/png'}); 
    res.end(lastPng); 
}); 

server.listen(8080, function() { 
    console.log('Serving latest png on port 8080 ...'); 
}); 
+0

你見過[webflight(http://eschnou.github.io/ardrone-webflight/)?這是一款非常完整的基於瀏覽器的AR.Drone控制器,包括無人機攝像頭的實時視頻輸入。 –

回答

1

研究使用websockets推送內容到網頁。 Socket.io在使websocket變得簡單方面做得非常出色。使用socket.io,您可以將數據推送到網頁,然後使用JavaScript處理該網頁中的數據。

相關問題