有人可以引导我朝正确的方向前进吗?
我有一个NodeJS应用程序正在显示图像。映像(保存在本地目录中)在一定时间后通过OpenCV脚本进行更新。但是,更新图像后,直到刷新页面后,更新才会显示在我的应用程序中。有谁知道我如何自动更新图像?
这是我将目录中的图像作为静态文件提供的方式:
var express = require('express');
var app = express();
var publicDir = require('path').join(__dirname,'/public');
app.use(express.static(publicDir));
使用上面的代码,我可以使用以下目录访问我的图像: http://localhost/images/myImage.jpg
有人知道我如何自动更新图像吗?还是为我的用例推荐一些不同的东西?我不知道我解决这个问题的方法是否正确。
答案 0 :(得分:1)
您可以使用reload从服务器端自动刷新页面。这可能对您有帮助。 文档中说明了如何手动重新加载。
reloadServer = reload(app);
watch.watchTree(__dirname + "/public", function (f, curr, prev) {
// Fire server-side reload event
reloadServer.reload();
});
答案 1 :(得分:0)
看看Socket.IO http://socket.io/#how-to-use
当服务器决定广播更改用途时:
io.sockets.emit('update-msg', { data: 'this is the data'});
在客户端上首先连接socket.io,然后等待“ update-msg”事件并更新您的dom:
var socket = io.connect('http://localhost');
socket.on('update-msg', function (msg) {
console.log(msg);
$('#mydiv').html(msg.data)
});