【发布时间】:2014-08-23 13:41:37
【问题描述】:
我正在从事一个大数据项目,该项目不断将实时数据推送到 Redis 数据库。现在,我存储的密钥数量随着时间的推移而增加。我想:
- 在通过网页更新时显示这些计数
- 使用 node.js 从 Redis 查询值
- 使用 AngularJS 查询 node.js 以显示值。
我可以在终端中运行以下 node.js 应用程序以打印出键值
NodeApp.js
var redis = require("redis"),
client = redis.createClient();
client.on("error", function (err) {
console.log("Error " + err);
});
client.on('connect', runSample);
function runSample() {
var myTimer = setInterval(function() {
console.log('=============================');
console.log(' Totals ');
console.log('=============================');
client.get('launch', function (err, reply) {
if(reply) {
console.log('launch: ' + reply.toString());
}
});
client.get('resume', function (err, reply) {
if(reply) {
console.log('resume: ' + reply.toString());
}
});
}, 500);
}
index.html
<!DOCTYPE html>
<html lang="en" ng-app="APP">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.2/angular.min.js"></script>
<script src="EventTypeController.js" type="text/javascript"></script>
<link rel="stylesheet" href="theme.css">
<title>Redis Data</title>
</head>
<div id="main" ng-controller="EventTypeController" ng-init="init()">
<h1>Event Types</h1>
<div class="centerwrapper">
<div class="box">
<p class="eventCount">{{launch}}</p>
<p class="eventName">Launch</p>
</div>
<div class="box">
<p class="eventCount">{{resume}}</p>
<p class="eventName">Resume</p>
</div>
</div>
</html>
EventTypeController.js
angular.module('APP', [])
.controller('EventTypeController', ['$scope', function($scope) {
$scope.launch = 0;
$scope.resume = 0;
$scope.init = function() {
// run nodeapp.js file
// set $scope.launch to redis key value
// repeat for $scope.resume
// continue to read over time interval
};
}]);
如何从 HTML 文件中的 reply.toString() 中获取值以不断更新
的文本?
【问题讨论】:
标签: javascript html node.js angularjs redis