使用AngularJS处理Nodejs流

时间:2014-10-10 13:15:39

标签: node.js angularjs sockets stream

我正在使用nodejs流从我的级别数据库中获取数据(使用leveldb)。这是我使用的代码片段:

  app.get('/my/route', function (req, res, next) {

    leveldb.createValueStream(options)
    .pipe(map.obj(function (hash) {
        level.get(somekeys, function (err, item) {

          return item
        })
      }))
    .pipe(res)
  })

到目前为止,我一直在使用list-stream模块来获取客户端的数据。

现在我想将客户端的信息作为流检索。我已经阅读了这篇文章(http://www.kdelemme.com/2014/04/24/use-socket-io-to-stream-tweets-between-nodejs-and-angularjs/)关于如何使用socket.io这样做但我不想使用socket.io

有没有简单的方法呢?

2 个答案:

答案 0 :(得分:0)

可以使用Shoe完成此操作。您必须使用browserify编译客户端代码,并且您可以在浏览器中拥有一个从服务器接收数据的流。

答案 1 :(得分:0)

createValueStream基本上是一个读取流,然后你可以听取事件,例如,dataendhttps://github.com/substack/node-levelup#createValueStream

只需要监听end事件即可完成信息流。

  app.get('/my/route', function (req, res, next) {

    leveldb.createValueStream(options)
    .pipe(map.obj(function (hash) {
        level.get(somekeys, function (err, item) {
          return item
        })
      }))
    .pipe(res)
    .on('end', res.end)
  })