如何使用socket.io从elasticsearch获取流数据?

时间:2015-06-23 20:07:49

标签: elasticsearch socket.io

我使用了nodesearch的elasticsearch模块从elasticsearch获取数据。 使用client.search()获取数据。 代码:

    var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var elasticsearch = require('elasticsearch');

var client = new elasticsearch.Client();

app.get('/', function(req, res){
  res.sendfile('index.html');
});

io.on('connection', function(socket){

    client.search({
      index: 'myindex',
      type: 'mytype',
      size: 5,
      body: {
        query: {
          match_all : { }
        }
      }
    }).then(function (resp) {
        var hits = resp.hits.hits;
        console.log(hits);
            socket.emit("data", hits);
    }, function (err) {
        console.trace(err.message);
    });

    socket.on("disconnect", function () {
    console.log('disconnected');
    });
});

http.listen(3000, function(){
  console.log('listening on *:3000');
});

但是使用这段代码我没有将新数据添加到elasticsearch中。 请建议我如何使用Socket.io从ES中获取流数据?

0 个答案:

没有答案