Tag: 表示

ExpressJS会话尽pipe活动即将到期

把这个问题带到SO,因为快递小组没有答案 。 我设置会话maxAge = 900000,我看到会话cookie的expires属性设置正确。 但是,在随后的请求中,超时不会被延长。 它永远不会延长,cookie最终会过期。 会话中间件文档说Session#touch()不是必须的,因为会话中间件会为我做。 我实际上尝试手动调用req.session.touch() ,并没有做任何事情,我也尝试在req.session.cookie上设置req.session.cookie ,并且没有做任何事情:-( 我是否错过了某个地方的设置来自动扩展活动会话? 除了在每个请求上手动重新创buildCookie之外,还有其他方法可以在最终用户活动之后延长会话超时吗? 编辑:我在快递v3中遇到这个问题。 我不是100%肯定的,但我认为这个来自明确变更日志的logging可能是罪魁祸首: 更改会话()只修改set-cookie(哈希会话json)

在不重新启动服务器的情况下重新加载Express.js路由更改

我试过express-livereload ,但它只是重新加载视图文件。 我应该使用另一个工具,或者这个可以configuration为监视我的index.js文件运行服务器? 我读了选项是相同的node-livereload ,并且观察文件的默认值包括.js文件。 你知道一个简单的configurationURL? 我的主要问题是如何为Express.js设置良好的开发环境,我想在请求时检查variables,每次在路由中进行更改都很痛苦。 PS我尝试了node-inspector器检查variables时,服务器处理请求,但它似乎node-inspector器不是为此,对不对?

NodeJS以相对path访问文件

这似乎是一个简单的问题。 但我无法解决这个问题。 在helper1.js中,我想访问foobar.json(从config/dev/ ) root -config –dev —foobar.json -helpers –helper1.js 我无法得到这个工作FS:我如何find父文件夹? 这里的任何帮助将是伟大的。

如何处理node.js中的代码exception?

我经历了Express的文档, 描述error handling的部分对我来说是完全不透明的。 我想他们所指的app是一个实例createServer() ,对不对? 但是我不知道如何在处理请求的过程中发生exception时阻止node.js炸毁应用程序进程。 我真的不需要任何幻想; 我只想返回一个500的状态,加上一个空的响应,只要有exception。 节点进程不能因为某处存在未捕获的exception而终止。 有一个简单的例子,如何实现这一目标? var express = require('express'); var http = require('http'); var app = express.createServer(); app.get('/', function(req, res){ console.log("debug", "calling") var options = { host: 'www.google.com', port: 80, path: "/" }; http.get(options, function(response) { response.on("data", function(chunk) { console.log("data: " + chunk); chunk.call(); // no such method; throws here […]

如何获得node.js(express.js)中的浏览器语言?

用户请求某个页面,我想知道(在服务器端)他/她的浏览器中的语言是什么。 所以我可以使用正确的消息来呈现模板。 在客户端很容易: var language = window.navigator.userLanguage || window.navigator.language

Express:访问路由中的app.set()设置

在Express中,我导致相信可以通过在我的主app.js文件中执行类似于以下内容的操作来创build全局应用程序设置: var express = require('express'), … login = require('./routes/login'); var app = express(); app.configure(function(){ … app.set('ssoHostname', 'login.hostname.com'); … }); … app.get('/login', login.login); … 现在在./routes/login.js ,我想访问app.settings.ssoHostname ,但是如果我尝试运行类似于(按照: 如何在express js中使用app.set()来访问variables ) : … exports.login = function(req, res) { var currentURL = 'http://' + req.header('host') + req.url; if (!req.cookies.authCookie || !User.isValidKey(req.cookies.authCookie)) { res.redirect(app.settings.ssoHostname + '/Login?returnURL=' + encodeURIComponent(currentURL)); } […]

使用NodeJS Express和node-sass让SASS自动debugging

我正在开发使用node.js,而不是编写的CSS想编写SCSS文件,每当我刷新页面自动编译。 如何在使用NodeJS,Express和node-sass时使SASS文件自动编译。

Connect或Express中间件来修改response.body

我想有一个中间件function,修改响应正文。 这是一个快递服务器。 就像是: function modify(req, res, next){ res.on('send', function(){ res.body = res.body + "modified" }); next(); } express.use(modify); 我不明白要听什么事。 任何帮助或文件将不胜感激。

Nodejs Express框架caching

我正在使用Nodejs和Express Js。 此外,我还将ExpressJ添加到Express Js中以执行一些实时操作。 在我有configuration文件 app.configure('production', function() { var oneYear = 31557600000; app.use(express.static(__dirname + '/public', { maxAge: oneYear })); app.use(express.errorHandler());}); 我使用这个命令运行应用程序: $ NODE_ENV=production node app.js 但是,文件(图像,CSS,JS)似乎不被caching,他们总是作为新的文件。 P / S:我刚刚用localhosttesting过,caching似乎在localhost上工作,但是当上传到服务器时,caching不再工作了。

Node.js / Express – 找不到页面时呈现错误

我在Node.js中有以下控制器/路由定义(使用Express和Mongoose)。 当用户请求一个不存在的页面时,处理Error的最合适的方法是什么? app.get('/page/:pagetitle', function(req, res) { Page.findOne({ title: req.params.pagetitle}, function(error, page) { res.render('pages/page_show.ejs', { locals: { title: 'ClrTouch | ' + page.title, page:page } }); }); }); 它目前打破我的应用程序。 我相信因为我没有对错误做任何事情,我只是把它传递给视图就像一个成功? TypeError: Cannot read property 'title' of null 非常感谢。