草庐IT

grunt-express

全部标签

session - 使用 express/redis 进行 session 存储时,“ session ”未定义

我正在尝试在我的express应用中使用redis进行session。我执行以下操作:varexpress=require('express');varRedisStore=require('connect-redis')(express);app.configure('development',function(){app.use(express.session({secret:"password",store:newRedisStore({host:"127.0.0.1",port:"6379",db:"mydb"})}));稍后,在我的应用中,如果我执行以下操作:varwhate

node.js - Express.js 路由错误 : Can't set headers after they are sent

我不确定为什么会收到此错误。这是一个基于express.js构建的简单API,能够添加和删除帖子。当我触发删除路由器时发生错误。我读过这个错误通常发生在有两个回调时,但是,我似乎找不到任何双重回调。_http_outgoing.js:344thrownewError('Can\'tsetheadersaftertheyaresent.');Error:Can'tsetheadersaftertheyaresent.atServerResponse.OutgoingMessage.setHeader(_http_outgoing.js:344:11)atServerResponse.he

node.js - 使用 jasmine 测试 Express.js

我正在学习Node.js和Express框架。我是Jasmine的忠实粉丝。所以我想尽可能地使用jasmine,但是,我找不到用jasmine测试Express的好方法。例如,我应该如何在app.js中测试路由?如果我在app.js中有这条路线:app.get('/',function(req,res){...});如何使用jasmine进行测试? 最佳答案 从Jasmine2开始,在Node.js环境中使用Jasmine非常简单。测试express使用它的应用程序,我建议将Jasmine与supertest结合使用.下面是这样一个

node.js - 有没有办法通过 Express + Node.js 使用多个 View 引擎

场景:我使用Node.js开发了一些交易页面,Express+Handlebars作为View引擎和MongoDB.现在的问题是在模块集成期间,我得到了一些基于Express构建的页面+Jade作为View引擎。问题:如何集成基于Handlebars和一些基于Jade的页面? 最佳答案 添加两个引擎和consolidate.js在你的package.json在yourapp.jsvarengine=require('consolidate');app.engine('jade',engines.jade);app.engine('h

node.js - 当进程被杀死时,如何优雅地关闭我的 Express 服务器?

在生产中运行我的Express应用程序时,我想在服务器进程被终止时优雅地关闭服务器(即发送SIGTERM或SIGINT)。这是我的代码的简化版本:constexpress=require('express');constapp=express();app.get('/',(req,res)=>res.json({ping:true}));constserver=app.listen(3000,()=>console.log('Running…'));setInterval(()=>server.getConnections((err,connections)=>console.log(

node.js - 未调用 Express 4 中间件错误处理程序

对于某些页面,我的应用中有自定义500、404和403错误处理。因此,例如在数据库查询不成功后,我会去:returnnext({status:404,message:'Recordnotfound'});或returnnext(newError('Badthingshavehappened')});在我的中间件中,我有一个错误处理程序:app.use(function(err,req,res,next){//handleerror});问题是永远不会调用错误处理程序,而是将错误调用堆栈打印到浏览器中。我希望处理程序呈现自定义错误页面。app.jsvarexpress=require('

php - Express Web 框架中 session key 的重要性

我对sessionkey的重要性感到很困惑。我正在使用Express和Node进行Web开发,目前,我正在尝试实现一个简单的登录。以下代码取自Express中的session示例。//Requiredbysession()middleware//passthesecretforsignedcookies//(requiredbysession())app.use(express.cookieParser('keyboardcat'));//Populatesreq.sessionapp.use(express.session());它使用“键盘猫”作为sessionsecret。我环顾

node.js - 如何使用 grunt.log 记录彩色消息

我想在运行特定任务时使用Grunt记录警告、黄色消息。目前我使用grunt.log.subhead输出粗体字,但没怎么注意。grunt.log.subhead'Youmaywanttouse--sourceMapsoption' 最佳答案 你可以试试这个:grunt.log.writeln('Youmaywanttouse--sourceMapsoption'['yellow'].bold);日志的gruntAPI文档没有提到如何做到这一点。我在这里的一组幻灯片中找到了它:http://slides.com/joshschumach

node.js - 运行 Grunt 任务时的优雅 fs 警告

我在运行一项繁重的任务时收到此警告:Warning:(node:2771)fs:re-evaluatingnativemodulesourcesisnotsupported.Ifyouareusingthegraceful-fsmodule,pleaseupdateittoamorerecentversion.有人知道如何摆脱它吗?以及如何找到它的来源?我的nodejs版本是6.0.0。 最佳答案 您现在最好的选择是降级到最新的Node5.x,直到更新该依赖项。建议您阅读:DON'TrushtoupgradetoNodev6和Bre

javascript - 如何在 express js 中访问使用 app.set() 设置的变量

如何访问使用express的app.set()设置的变量例如app.set('viewengine','jade');app.set('jsDirectory',/js/');从指南中,我了解到我可以使用app.get()访问相同的内容,但这是console.log(app.get('viewengine'))的输出.{router:{app:{stack:[Object],domain:null,_events:[Object],_maxListeners:10,_connections:0,connections:[Getter/Setter],allowHalfOpen:true