Tag: callback

在下面的控制stream中使用响应之前,如何等待节点/快速应用程序中mongo findOne查询的响应

我是新来的节点,也是JavaScript的callback。 我试图检查一个帐户是否存在在mongo中,然后'保存',如果没有,并返回一个错误,如果是的话。 我目前正在试图找出我的快速应用程序之外。 这是我的.. var MongoClient = require('mongodb')。MongoClient; MongoClient.connect('mongodb://localhost:27017/main', function (err, db) { if(err) throw err; var query = { name : "www.website.com"} findOne(db, query, function (doc) { if(doc) { console.log('account exists'); } else { console.log('good to go'); } console.dir(doc); }); }); var findOne = function (db, query, callback) { db.collection('accounts').findOne(query, function (err, doc) { […]

不太了解Q诺库

我在这里查看Q库: https : //github.com/kriskowal/q 这是我如何写一个函数与callback: function token(callback) { require('crypto').randomBytes(34, function(ex, buf) { var token = buf.toString('hex'); callback(token); }) } exports.generateToken = token; 那么我会: require('../models/security').generateToken(function (token) { console.log("here " + token) }) 那我怎么做呢?

Nodejs串联运行函数

所以现在我试图使用Nodejs来访问文件,以便将它们写入服务器并处理它们。 我已经把它分成以下几个步骤: 遍历目录以生成所有文件path的数组 将来自每个文件path的原始文本数据放在另一个数组中 处理原始数据 前两个步骤工作正常,使用这些function: var walk = function(dir, done) { var results = []; fs.readdir(dir, function(err, list) { if (err) return done(err); var pending = list.length; if (!pending) return done(null, results); list.forEach(function(file) { file = path.resolve(dir, file); fs.stat(file, function(err, stat) { if (stat && stat.isDirectory()) { walk(file, function(err, res) { results = results.concat(res); […]

从Node.Js中的一系列callback函数返回结果

我的Node.Js / Express应用程序中有一个导出函数,我想通过它内部的一系列callback函数返回一个特定的值。 试图让它工作几个小时,但找不到正确的方法…也许你可以帮忙吗? 代码如下: exports.finalResult = function() { var finalanswer = firstFunction(secondFunction); function firstFunction(callback) { dbneo.cypherQuery(context_query, function(err, cypherAnswer) { if (err) { err.type = 'neo4j'; return callback(err); } var notion = 1; // Probably this return below doesn't work because it's inside of a db query function… return callback(null, notion); }); } function secondFunction(err, […]

如何在自己的函数中定义一个callback函数? 的NodeJS

我在nodeJS中很新,出现了以下问题:我在我的一个控制器中定义了一个函数,我想validation一个JSON-Web-Token。 我使用了以下function: exports.validate = function (token, cb) { jwt.verify(token, secretToken, cb(err, decoded)); } 但每次我想运行它,nodeJS给我的错误,'err'没有定义? 在jwt-Example中有以下例子: // verify a token symmetric jwt.verify(token, 'shhhhh', function(err, decoded) { console.log(decoded.foo) }); 所以显然我错了,但我不知道是什么。 我也不知道要寻找什么…我做了一些谷歌search,但没有任何帮助我到目前为止。 我很乐意听取您的意见。 问候 / /编辑:这就是我所说的function: AuthController.validate(req.headers['api-token'], function(err, decoded){ if(err){ console.log('Error: ', err); res.status(401); next(); } else if(decoded) { console.log('Success: ', decoded); next(); } })

redirect本地主机而不是myserver.org:3000/login/callback

被redirect到我的本地主机服务器,而不是 myserver.org:3000/login/callback 至 本地主机:3000 /login/callback 不明白为什么,从哪里 这里是我的代码的一部分: app.get('/', function(req, res){ res.render('index', { user: req.user }); }); app.get('/account', ensureAuthenticated, function(req, res){ res.render('account', { user: req.user }); }); app.get('/login', passport.authenticate('saml', { failureRedirect: '/', failureFlash: true }), function(req, res) { console.log('so far worked out – =) 2'); res.redirect('/'); } ); console.log('so far worked out – =) 1'); app.post('/login/callback', […]

如何处理Node.js模块中的asynchronouscallback?

这是我第一次试图把一个节点模块放在一起,我仍然试图围绕如何构buildasynchronouscallback。 这是一个例子。 现在我正在尝试使用featureService.getCount()并没有得到任何回应。 使用断点,我知道featureService.getUniqueIds()正在工作。 由于callback在那里,我假设我没有得到一个长度的原因是getCount中的callback尚未响应。 在大部分时间看了下来,并没有真正提出一个非常好的解决scheme,而不是一个recursion循环检查要填充的超时值,我正在寻求build议如何更好地构build我的代码来完成任务在眼前。 我已经读了一些关于承诺。 这是一个适用的实例,甚至是一个可行的解决scheme? 我真的不知道如何实现承诺,但在这种情况下,这是合乎逻辑的。 显然我在这里输了。 感谢您提供的任何帮助。 var Client = require('node-rest-client').Client; var client = new Client(); var featureService = function(endpoint){ var uniqueIds; var count; // get list of unique id's this.getUniqueIds = function(){ if (!uniqueIds) { var options = { parameters: { f: 'json', where: "OBJECTID LIKE '%'", returnIdsOnly: 'true' } […]

asynchronoussocket.io JavaScriptcallback不工作

我需要帮助,使我的JavaScriptasynchronous,因为我从一个数据库与节点查询。 我正在使用node.js和socket.io。 如果我使用setTimeout()函数,代码将起作用,但是我想使代码更可靠,所以我试图实现callback。 但是,我不知道如何在callback函数中正确使用“socket.on()”。 我认为问题是我嵌套socket.on调用和第二个“socket.on()”调用不会执行。 任何帮助将不胜感激,谢谢。 /*server side*/ socket.emit(variable1);//not important socket.emit(variable2);//not important //code above isn't important, I just wanted to show how data is used from my queries /*client side*/ var socket = io.connect('123.456.789.123:3000'); var data = " ";//data I need to pass around socket1(data, function(){ socket2(data) }); function socket1(data, callback) { socket.on('variable1', function (data) […]

callback方法在node.js中是否有必要定义?

我是node.js的新手 我已经看到代码,只是调用callback方法,但它永远不会在文件中的任何地方定义。 因此,没有定义什么是调用callback方法到底做了什么? 例如 CollectionDriver.prototype.findAll = function(collectionName, callback) { this.getCollection(collectionName, function(error, the_collection) { if( error ) callback(error); else { the_collection.find().toArray(function(error, results) { if( error ) callback(error); else callback(null, results); }); } }); }; 我明白基于this.getCollection(collectionName)方法的成功或失败,callback方法“callback”被适当调用,但没有定义可用的callback方法。 那么这个通话如何有用呢?

Express Postfunction中callback的执行顺序

我遇到了[express的路由处理方法],特别是Post函数的问题。 ( http://expressjs.com/api.html#app.VERB ) 我正试图通过这个护照示例中的一段代码进行parsing app.post('/login', passport.authenticate('local', { failureRedirect: '/login', failureFlash: true }), function(req, res) { res.redirect('/'); }); 快递文件说 给出多个callback,所有处理都是平等的,并且像中间件一样行为。 我的问题是,准确的说法如下: 中间件就像一堆连接在一起的pipe子。 首先介绍的中间件是首先列出的中间件。 如果数据是水,它将stream经首先列出的pipe道。 路由处理方法中的callback也是如此:callback是连接在一起的pipe道,如果通过这些“pipe道”来倒入数据,则通过列出的第一个callback,然后是第二个callback。 真的吗? 作为后续问题,这些callback应该返回什么? 是第一个callback返回一个响应,第二个callback接收和对待作为一个请求? 应该从pipe道里出来,我可以把它粘到第二根pipe子上吗?