仅在没有其他订阅者时才订阅观察者

时间:2016-08-04 17:51:31

标签: javascript node.js rxjs

我有一个使用rxjs发出事件的HTTP服务器。我根据请求网址过滤我的流

let stream = otherStream
   .filter(streams=>{
     return streams.req.url.match(/^\/api\//);
   });

我如何以这样的方式订阅stream observable,如果没有其他订阅者,observable(stream)将只发出(对我的订阅者)?如果请求与我的过滤器匹配,那么我可以调用响应的相应write / end方法,但如果没有特定网址的订阅者,即404,那么我想回复适当。相反,连接只是挂起,因为没有订户注册处理http响应流。

类似

let stream404 = otherStream
  .noSubscribers(streams=>{
    streams.res.statusCode = 404;
    streams.res.write('not found');
    streams.res.end();
  });

0 个答案:

没有答案