Tag: sails.js

sails.js连接失败回退

我的Sails应用程序有不同的模型,其中大部分通过sails-mongo适配器连接到MongoDb,其中很less通过sails-redis连接到Redis(模型的“实时”场景部分,比如Notifications,可能寿命短)。 但是,即使Redis连接已closures,我也希望启动应用程序,并且对用户的function有限。 但是,如果我用redis运行应用程序closures,它不会启动,因为它预计所有的连接工作。 这可以以某种方式解决而不将应用程序分割成多个服务? 或者,如果没有,那么可以为有问题的模型定义回退连接?

将对象传递给sails.js中的views / layout.ejs

我很难尝试传递一个对象到我的项目的布局,以获得我需要在导航栏中显示的类别列表。 我一直在尝试几个解决scheme在这里和所有涉及使用策略和分配res.locals.myVar = someObj,问题是res.locals和也使用req.options.locals.myVar只有在控制器操作的视图而不是布局 到目前为止我得到了这个。 // getRoomList POLICY Room.find().exec(function(err, rooms) { if (err) { return res.badRequest('Something went wrong.'); } if (rooms) { res.locals.roomlist = rooms; next(); } else { res.notFound(); } }); // config / policies '*': 'getRoomList' //在layout.ejs中 <%= roomlist %>

Ui.Bootstrap Typeahead不能使用Async调用

我正在使用ui.bootstrap typeahead与asynchronous调用。 然而,由此产生的数据似乎没有find方式返回到前面的指令,随后没有下拉与数据出现。 该html是 <input type="text" ng-model="asyncSelected" placeholder="Search Profile" typeahead="username.username for username in getSearch($viewValue)" typeahead-wait-ms="400" class="form-control"> JSfunction在这里 $scope.getSearch = function (val) { return $sails.get("/search/" + val).success(function (response) { console.log(response); return response.map(function (item) { console.log(item.username); return item.username; }); }).error(function (response) { console.log('The sails profile search has failed'); }); } 响应JSON对象是 Object @type: "d" id: "#17:3" username: […]

使用passport-facebook策略和passport-local无法将用户序列化到会话中

我在sails.js使用passport-local和passport-facebook策略进行身份validation。 使用电子邮件validation工作正常。 但是,当用户使用Facebook进行身份validation时,出现此错误消息[Error: Failed to serialize user into session] 。 然后我testing了serializeUser方法,事实certificate, user参数在facebook的情况下是空的。 虽然我也试着看看verifyHandler是否被调用,而不是被调用。 这是我的Facebook身份validation操作代码: facebook: function (req, res) { passport.authenticate('facebook', {failureRedirect: '/login', scope: ['email']}, function (err, user) { if ((err) || (!user)) { req.session.flash = { errMsg: 'Email or password mismatch.' } return res.redirect('/login'); } req.logIn(user, function (err) { if (err) { console.log(err); res.view('500'); return; […]

sails.io.js – 从“Resourceful PubSub”断开连接

我正在构build一个单页的Web应用程序,在后端使用sails.js ,并通过socket.io.js套接字io包装来连接。 我有一个小帮手类让我订阅我的模型: subscribe(model, next) { io.socket.get('/' + model, function serverResponded (body, JWR) { if (JWR.statusCode == 200) { next(null, body, JWR.headers); } next('The socket server responded with a bad status code ' + (JWR.statusCode), null, JWR.headers); }); } 所以这个工程(我想,不知道如何得到更新推送给我,但是,),但是,当用户更改我的Web应用程序中的页面,我应该如何断开这个“订阅”,并保持连接,因为它的单个页面? 我看到io.socket.disconnect()但不知道如何适应它。

与风帆的卫星

我想通过社交networking在Sails应用程序中实现本地身份validation和身份validation,该应用程序是作为API服务器开发的。 我尝试过passportjs和sails-auth-generator,但是我认为它们更适合于渲染服务器端视图的风帆应用,并且如果在一个平静的应用中实现,则需要额外的逻辑。 有了这个,我find了卫星validation模块 ,并且真的想在passportjs乱码上使用它。 它也有非常干净的例子用于validation不同的networking:身份validation的例子 。 另外,它有客户端的angularjs指令,用于即插即用。 但是,我无法弄清楚我应该如何将整个ExpressJs例子转换成服务,政策等术语,因为这对我来说是新的。 请协助。 谢谢!

不能上传base 64到imgur

up: function(req, res) { console.log(req.param('image')); imgurwrap.setClientID('myImgurClientID') imgurwrap.uploadImageBase64({ image: req.param('image'), title: 'sfdsf', description: 'sfsdf' }, function(err, res) { console.log(res); console.log(err); }); }, 这个代码返回一个像这样的空图像的URL: http : //i.imgur.com/1cmilFL.png 。 但是,如果我声明一个variables,并把我的编码base64string,它的作品。 所以我想在请求中有一些数据,但差异显示没有区别。 我已经尝试了其他npm imgur模块,它始终是相同的行为,所以必须在我身边的东西,但我无法弄清楚..

node.js与sails.js pm2 socket.io重新连接

我使用节点v0.12.2,sails.js v0.11和pm2 0.12.13,在浏览器中出现“接收握手响应之前连接closures”和“错误:xhr post error”。 我怎样才能解决这个问题? config.session adapter: 'redis', host: 'localhost', port: 6379, ttl: 0, db: 'sails' config.socket adapter: 'socket.io-redis', host: '127.0.0.1', port: 6379, db: 'sails'

使用asynchronous库来组装来自数据库的所有标签

我正在使用sails.js创build一个标记系统,它与一个名为Post的实体具有多对多的关系。 我做关联的方式是使用数据库表来关联每个tagId和postId 。 每个post可以有多个标签。 在检索{tagId : 'tagId, postId: 'postId'}对象的数组后,我需要检索每个tagId的标签名称。 我使用async库,但标记名称(string)数组返回一个空的,从日志信息,我可以看到,返回发生在迭代器函数完成之前。 我的代码如下: var tagIdPostIds = [ {tagId : 'abcx', postId: 1}, {tagId : 'abce', postId: 1}, {tagId : 'abcd', postId: 1}, ]; if (tagIdPostIds) { var tagsArr = []; //container of tag names var findTagById = function(tagIdPostIdObj, cb) { var tagId = tagIdPostIdObj.tagId; Tag.findOneById(tagId, function (err, […]

SailsJS / ExpressJS req.body未定义

我已经尝试在config / http.js中取消注释bodyParser – 这仍然不能解决问题 – 现在它似乎只是没有git的路线。 下面是我的config / http.js文件。 configuration/ http.js module.exports.http = { middleware: { order: [ // 'startRequestTimer', // 'cookieParser', // 'session', // 'myRequestLogger', 'bodyParser', // 'handleBodyParserError', 'compress', 'methodOverride', 'poweredBy', '$custom', 'router', // 'www', // 'favicon', '404', '500' ], // myRequestLogger: function (req, res, next) { // console.log("Requested :: ", req.method, req.url); […]