如何在不使用req和res.locals的情况下实现NodeJS中的ThreadLocalvariablesfunction?

我有一个场景,我需要做一些业务逻辑和logging每个请求。 所以要存储的数据应该与其他请求相互排斥。

我不能使用res.locals或req对象,因为处理应该基于一个事件开始。 而事件callback不包含这些对象。

它基本上保存了bookshelfjs的事件。

initialize: function(){ this.on("saving",function(model, attrs, options){ //do some stuff //require data from request }); } 

Node.JS中没有线程,你有延续 。

因此,一些要查看的软件包是continuation-local-storage和request-local-storage 。

您可以使用域API (ab)来实现类似的function 。 或者,如果可以适当地构build闭包或callback参数,则可以完全避免使用它。