是否想做一個遠端系統螢幕監控功能?這是個有意思的功能。
Node.JS可以實作,而且很友善。
目标效果:
在網頁中實時檢視系統螢幕内容。
實作原理:
1、用express實作伺服器;
2、當通路來臨時,截圖并儲存成檔案,再傳給通路者。
代碼:
var express = require('express');
var app = express();
//中間件,實作螢幕監控
app.use(function(req,res,next){
var screenshot = require("desktop-screenshot");
//螢幕截圖
screenshot("screenshot.png", function(error, complete) {
console.log(req.url);
if(error)
console.log("Screenshot failed", error);
else
console.log("Screenshot succeeded");
});
next();
})
//内置中間件,靜态檔案通路
app.use(express.static('./'))
//監聽
var server = app.listen(8000, function () {
var host = server.address().address
var port = server.address().port
console.log(host, port);
})
//當通路根目錄時觸發
app.get('/', function (req, res) {
res.send('Hello Jshaman.com');
})
示例代碼很簡單,核心是使用了一個desktop-screenshot的三方控件,以實作螢幕截圖。
截圖的時機,是通過中間件的使用,達到有任意通路時即截圖。
效果測試:
運作上面的代碼,然後我們可以通過以下路徑通路:
http://127.0.0.1:8000/screenshot.png
就可以看到截圖如下:
隻要重新整理頁面,就可以檢視實時的螢幕動态。
一台電腦運作此程式,在另一台電腦通路:
很好,完美的螢幕監控。
手機上可以進行監控嗎?當然可以。