Tag: node.js

在expressjs中使用next()将variables传递给下一个中间件

那么我的问题是我想通过一些variables从第一个中间件到另一个中间件,我尝试这样做,但有req.somevariable是一个给定的'未定义'。 //app.js .. app.get('/someurl/',middleware1,middleware2) … ////middleware1 … some conditions … res.somevariable = variable1; next(); … ////middleware2 … some conditions … variable = req.somevariable; … 谢谢回答。

Socket.IO文档

有没有关于Socket.IO的文档? 它的网站只有一个很差的wiki,没有完整的文档解释连接,排放,要求等等

了解Node.js模块:多个需要返回相同的对象?

我有一个关于模块caching的node.js文档的问题: 模块在第一次加载后被caching。 这意味着(除其他外)每个调用require('foo')将返回完全相同的对象 ,如果它将parsing为相同的文件。 多次调用require('foo') 可能不会导致模块代码被多次执行。 这是一个重要的function。 有了它,“部分完成”的对象可以被返回,从而允许传递依赖被加载,即使它们会导致循环。 may是什么意思? 我想知道如果require将始终返回相同的对象。 因此,如果我需要app.js的模块A并更改app.js (需要返回的那个)中的exports对象,然后在app.js中需要模块B本身需要模块A ,那么我是否总能得到该对象的修改版本,还是新的? // app.js var a = require('./a'); ab = 2; console.log(ab); //2 var b = require('./b'); console.log(bb); //2 // a.js exports.a = 1; // b.js module.exports = require('./a');

用Mochatestingjavascript – 我如何使用console.log来debuggingtesting?

我正在使用JavaScripttesting运行“Mocha”。 我有一个失败的testing,所以我会debugging它使用console.log 。 但是当testing运行时,没有输出(仅来自Mocha的testing结果)。 摩卡似乎已经捕获并压制了我的console.log输出! 我怎样才能让摩卡显示我的输出? (在testing失败)? 编辑: 巨大的歉意! – console.log在testing过程中不起作用! 我一定是期待它压制输出,我没有正确地检查我自己的代码。 感谢您的回应。 所以…说的话…也许它实际上会是很好的压制输出testing通过? 嗯… 在一个相关的说明:我想使用console.log因为我有很多麻烦试图让Eclipsedebugging器连接到node.js. 我是唯一一个发现这个棘手的人吗? 你们如何debuggingnode.js? 用debugging器,还是用console.log语句?

在EJS模板(使用ExpressJS)中检查variables的存在的正确方法是什么?

在EJS的github页面上,有一个简单的例子: https : //github.com/visionmedia/ejs 例 <% if (user) { %> <h2><%= user.name %></h2> <% } %> 这似乎是检查名为用户的variables的存在,如果它存在,做一些东西。 杜,对不对? 我的问题是,如果用户variables不存在,为什么世界上会抛出一个ReferenceError? 这使得上面的例子无用。 什么是检查variables存在的适当方法? 我希望使用try / catch机制,并抓住ReferenceError? ReferenceError: user is not defined at IncomingMessage.anonymous (eval at <anonymous> (/usr/local/lib/node/.npm/ejs/0.3.1/package/lib/ejs.js:140:12)) at IncomingMessage.<anonymous> (/usr/local/lib/node/.npm/ejs/0.3.1/package/lib/ejs.js:142:15) at Object.render (/usr/local/lib/node/.npm/ejs/0.3.1/package/lib/ejs.js:177:13) at ServerResponse.render (/usr/local/lib/node/.npm/express/1.0.7/package/lib/express/view.js:334:22) at Object.<anonymous> (/Users/me/Dropbox/Projects/myproject/server.js:188:9) at param (/usr/local/lib/node/.npm/connect/0.5.10/package/lib/connect/middleware/router.js:146:21) at pass (/usr/local/lib/node/.npm/connect/0.5.10/package/lib/connect/middleware/router.js:162:10) at /usr/local/lib/node/.npm/connect/0.5.10/package/lib/connect/middleware/router.js:152:27 […]

Nodejs发送文件作为回应

Expressjs框架有一个sendfile()方法。 我怎样才能做到这一点,而不使用整个框架。 我正在使用node-native-zip来创build一个存档,我想将其发送给用户。

使用npm卸载时自动从package.json中删除依赖项

在npm init我可以使用以下方法在我的package.json中添加依赖项: npm install package –save 并说,我想uninstall包,我这样做: npm uninstall package 但我希望我的package.json也可以相应地更新,而不必手动转到该文件并删除该行。 从npm文档它说: 这是严格的附加,所以它不会从你的package.json中删除选项,没有一个很好的理由。 所以,我只是想知道这是否可能。

node.js,错误:找不到模块'express'

我是node.js的新手,尝试学习快速构build我的第一个Web应用程序。 被困在我的第一个示例代码。 需要一些帮助,让它运行。 在我发布这个问题之前,我没有search堆栈溢出,发现了一些类似的问题,但仍然无法解决它。 错误:找不到模块'express' 我使用的是Mac OS 10.8.2。 我使用nvm安装了node.js。 node.js:0.8.20 path to node:/Users/feelexit/nvm/v0.8.20/bin/node path to express:/ Users / feelexit / nvm / node_modules / express 这里是我的示例代码:这个文件位于: /Users/feelexit/WebstormProjects/learnnode/node_modules/index.js var express = require('express'); var app = express(); app.get('/', function(req, res){ res.send('welcome to express'); }); app.listen(3000); 当我尝试运行这个文件“node index.js” 我收到以下错误消息,请帮我解决它。 谢谢 。 Error: Cannot find module 'express' at Function.Module._resolveFilename […]

永远存储console.log输出的地方在哪里?

我永远安装并使用它,发现它很有趣。 但是我意识到日志被放置在别的地方。 有什么build议吗?

如何用Mongoose删除数据库?

我正在准备Node.js和Mongoose中的数据库创build脚本。 我如何检查数据库是否已经存在,如果是的话,使用Mongoose删除(删除)它? 我找不到用mongoose把它放下的办法。