Articles of sails.js

护照本地types错误

我正在尝试在我的Sails项目中使用passport-local进行身份validation。 在我的控制器中: passport.authenticate('local', function(err, user, info) { if ((err) || (!user)) { res.json({message: 'Unable to authenticate'}); return; } req.login(user, function(err) { if (err) { res.json({message: 'Unable to login'}); console.log(err); return; } res.json({message: 'logging in'}); }); })(req, res); 在configuration文件中: passport.use(new LocalStrategy(function(username, password, done) { User.findOneByUsername(username).done(function(err, user) { if (err) { return done(null, err); } if (!user) […]

从Sails.js中的控制器更改视图

我只是想在一个视图文件的一部分打印一个句子。 但控制器决定。 这是我的控制器文件loginController login: function(req, res){ var x = new LdapService(); console.log('inside log in action') ; x.loginSuccessful(req.body.userid, req.body.password, function(isAuth){ console.log(isAuth) ; if(isAuth ) res.send('successful login'); else res.render('login/index', document.getElementById("message").innerHTML = "Log in failde. Please check your Username or Password"); }); }, 我不想用jSon。 我只是想执行一个JavaScript命令,并在我看来打印一个场景。 但是控制器和loginfunction应该决定它。 我的观点文件 : <div class="form-group"> <input type="password" name="password" class="form-control" placeholder="Password"/> <br> <p id="message"></p> […]

node.js / backbone.js应用程序加载configuration文件设置

我有一个node / backbone / sails项目,需要加载部署特定的configuration文件。 所以在应用程序的sails部分,我可以在myapp / config / mysettings.js中放置一个configuration文件 并引用它sails.config.mysettings.foo 。 这按预期工作。 但在应用程序的骨干部分,我不能为我的生活弄清楚如何引用相同的文件(…剪切为简洁)。 define([ 'jquery', 'async', …, **'/config/mysettings.js'** ], function ($, async, …, **mysettings**) { relevantAjaxFunction: function() { … **fail**: console.log(mysettings.foo); 在控制台中生成未定义的消息。 引用像这样的应用程序范围设置文件的正确方法是什么? 我看了,也找不到任何东西,这让我觉得这不是显而易见的,就是我错了。

在Forever中运行的NodeJS应用程序在浏览器中获取502错误

我有一个Webfaction服务器上设置的SailsJS应用程序。 当我通过以下任一命令运行应用程序(无论是否使用–prod param)时,一切正常(可通过浏览器访问站点) sails console , sails lift , node app.js 但是,当我尝试运行应用程序永远使用forever app.js我得到一个502错误,好像nodejs服务器甚至没有运行。 当我forever list运行forever list我可以看到正在运行的进程中列出的app.js。 我怎样才能使我的应用程序永远运行?

为什么我使用Socket.IO连接NodeJS服务器(Sails)到另一个NodeJS服务器(Express4)失败?

我正尝试使用socket.io-client将Node.JS(使用Sails.JS编写)应用程序连接到另一个Node.JS服务器(Express4 / Socket.io)。 我的Sails Service app/services/Watcher.js看起来像 var client = require('../../node_modules/sails/node_modules/socket.io/node_modules/socket.io-client'); // callback of the form function(socket) exports.connect = function(callback) { sails.log.debug("will connect socket to", sails.config.watcher.uri, "with Socket.io-client version", client.version); var socket = client.connect(sails.config.watcher.uri); socket.on('connect', function(){ sails.log.debug("connected"); socket.on('disconnect', function(){ sails.log.debug("Disconnected"); }); socket.on('error', function(err){ sails.log.debug("Could not connect", err); }); callback(socket); }); }; 这是从config/bootstrap.js调用,如下所示: Watcher.connect(function(socket){ sails.log.debug("Connected watcher to […]

使用Mocha和Grunt在Sails.js中运行functiontesting时的竞态条件

我正在使用Sails v0.10.x,并且在运行我的functiontesting时遇到问题。 testing/ bootstrap.test.js // force the test environment to 'test' process.env.NODE_ENV = 'test'; var Sails = require('sails'); // use zombie.js as headless browser var Browser = require('zombie'); // Global before hook before(function(done) { var self = this; // Lift Sails and start the server Sails.lift({ log: { level: 'error' }, }, function(err, sails) { […]

在SailsJS中查找当前页面

有谁知道一个更漂亮的方式来输出一个类名称到列表元素(在这种情况下)使用EJS? <% var active = "active"; %> <div class="header"> <ul class="nav nav-pills pull-right"> <li class="<% if(req.path == '/user') { %><%= active %><% } %>"><a href="/user">Users</a></li> <li class="<% if(req.path == '/about') { %><%= active %><% } %>"><a href="#">About</a></li> <li class="<% if(req.path == '/contact') { %><%= active %><% } %>"><a href="#">Contact</a></li> </ul> <h3 class="text-muted">Sails Tutorial App</h3> </div></li>

用debug-brk启动Sails不会运行Grunt?

当我没有debugging或仅使用–debug启动sails,并且包含–verbose作为应用程序参数时,它会显示它运行的grunt的详细信息(请参阅下面的第一个日志示例)。 但是,当我用debug-brk =运行应用程序时,它不会运行grunt。 (请参阅下面的第二个日志示例)。 我发布了这个在不同的论坛,有人build议“最可能的咕噜生成一个subprocess使用相同的debugging端口作为父应用程序…而且,由于端口已经绑定,它已被暂停”。 证据似乎支持这一点,但我无法find咕噜模块越过sails模块中的端口的位置。 有没有人遇到过这个? 我会认为这会是一件普通的事情,我错过了一些明显的东西。 问候 我正在使用…帆子0.10.5节点0.10.29咕噜0.4.5咕噜声0.1.13 这是一个很好的运行的例子..没有debugging或只有–debug(不是–debug-brk) C:\Users\myuser\git\datavis>node app.js –verbose verbose: Setting Node environment… verbose: Please run `npm install coffee-script` to use coffescript (skipping for now) verbose: moduleloader hook loaded successfully. verbose: Loading app config… verbose: userconfig hook loaded successfully. verbose: Exposing global variables… (you can disable this by modifying the […]

configurationSails.js以使用Vash视图引擎

我一直在试图find有关如何configurationSails以使用Vash视图引擎的信息。 我不确定是否有可能,因为看起来与Sails兼容的视图引擎必须基于consolidate.js。 我不确定Vash是否以巩固为基础,并且一直无法弄清楚是不是。

用Mocha / Sinon – SailstestingNodeJs

我对nodejs和sailsjs框架相对比较陌生,我真的很喜欢用它编写代码,但是来自PHP背景,我发现testingnodeJs有点奇怪。 我试图用mocha和sinon方法login我的AuthService ,但不是专家,我需要一个例子,你如何实现一个成功的testing,不幸的是,在线文档还是有点差,一个例子将是一个很多有用的感谢! login: function(username,password,callback) { User.findOneByUsername(username, function(err,user){ // If has some error if (err) { return callback(err) } // if the user is not found with that username if (!user) { return callback(err,false); } // if is found we match the password bcrypt.compare(password, user.password, function (err, res) { if (!res || err) return callback(err,false); […]