N久没更新东西啦

最近想折腾个RESTful API的东西。

服务器用Node.js实现,移动端就做个Android App吧,用来监控自己的服务器。

var express = require('express');
var app = express();
var fs = require('fs');
var child_process = require('child_process');
 
app.get('/status',function(req,res){
	fs.readFile(__dirname+'/'+'status.json','utf8',function(err,data){
		var worker = child_process.exec('ver',function(err,stdout,stderr){
			if(err){
				console.log(err.stack);
				console.log('Error code: '+err.code);
				console.log('Signal received: '+err.signal);
			}
			data = JSON.parse(data);
			var reg=/[\r\n]/g;
			stdout=stdout.replace(reg,'');
			data['OS']=stdout;
			data = JSON.stringify(data);
			res.end(data);
			console.log(data);
			console.log('stderr: '+stderr);
			fs.writeFile(__dirname+'/'+'status.json',data,function(err){
			if(err){
				return console.error(err);
				}
	});
		});
		worker.on('exit',function(code){
			console.log('Get System version successfully!');
		});
	});
 
});
 
var server = app.listen(8080,function(){
	var port = server.address().port;
	console.log('Server is running on port: %s',port);
})

基础代码,就跟上面的差不多,读取的是Windows系统的版本信息,然后响应请求并写入JSON,嘛,慢慢完善就是了。

服务器端基于Node.js,用的express框架,其实读取服务器信息什么的,很简单,就是简单的开进程用shell指令读数据、读配置文件,然后处理一下,写入JSON。

客户端打算在Android上写个APP,不过现在有选择困难,不知道该用那个版本的SDK。。。

这个简单的,后面会弄些复杂点的东西 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *