我在Sails.js中创建了一个JS记录器应用程序,一切看起来都很棒.现在,我正在努力扩展应用程序:我需要为同一个模型使用几个表(例如,session1 sesson2基于id 的表等).
让我们说对于模型"Pageview",我将使用不同的表,如"Pageview1","Pageview2"等.
我如何动态定义该模型的tableName,因此我可以根据param或属性在每个请求上更改它.
到目前为止,我已经尝试过这种方式
var tableId = 2;
Pageview.tableName = "pageview" + tableId;
Pageview.create(values, function...);
Run Code Online (Sandbox Code Playgroud)
该代码不会破坏应用程序,也不会抛出任何错误,但记录保存在默认表中,而不是我想要的.
我正在开发一个sails.js(基于express的node.js框架)应用程序,这很棒但是]我无法解决这个细节......
我需要从 Internet Explorer 8 和 9 跨域发送 POST 请求。为此,我被迫使用 xDomainRequest 对象,这不允许设置内容类型标头。
因此,当请求到达服务器时,内容类型是“text/plain”,它不会触发 bodyParser express 中间件,所以我的 req.body 是一个空对象,我看不到我正在发送的有效负载从客户端。
为此,我尝试了两件事但没有运气:
首先,我想在我的第一个中间件中为请求设置一个标头,这当然不可用:
req.set("Content-type", "Apli.....
Run Code Online (Sandbox Code Playgroud)
然后,我创建了一个监听 req.on('data') 的中间件,如下所示:
var data = "";
req.on('data', function(chunk){
data += chunk;
});
req.on('end', function(){
req.rawBody = data;
next();
});
Run Code Online (Sandbox Code Playgroud)
但是数据事件永远不会触发!
有谁知道我如何访问我的原始负载,以便我自己解析它。谢谢!