插座具有以下策略:政策在Sails.js
// file: api/policies/foo.js
module.exports = function(req, res, next) {
Model.find().done(function(err, result) {
if (result.length > 5) {
return res.forbidden();
} else {
return next();
}
});
};
// file: config/policies.js
module.exports.policies = {
ModelController: {
'find': 'foo'
}
};
和默认Model
和ModelController
。我现在表演上两个客户端执行以下操作:
// client 1
socket.get('/model', function(result) { console.log(result) });
// client 2
var i = 10;
while (i--) { socket.post('/model', { foo: 'bar' }); }
客户端1实际接收10次更新,虽然他只允许接收5 当通过socket.get
重新连接,我得到一个适当的权限错误。
我的问题: 在通过套接字发送更新之前检查权限的最佳做法是什么?
直视前进 - 谢谢! – pex