Tag: express

在nodejs中,如何停止FOR循环直到mongodb调用返回

请看下面的代码片段。 我有一个名为“stuObjList”的JSON对象数组。 我想通过数组来循环查找具有特定标志集的特定JSON对象,然后进行数据库调用来检索更多的数据。 当然,FOR循环不会等待db调用返回,并以j ==长度结束。 当db调用返回时,索引'j'超出了数组索引。 我了解node.js是如何工作的,这是预期的行为。 我的问题是,这里有什么工作。 我怎样才能达到我想要实现的目标呢? 谢谢, – 苏 …………… …………… …………… else { console.log("stuObjList.length: " + stuObjList.length); var j = 0; for(j = 0; j < stuObjList.length; j++) { if(stuObjList[j]['honor_student'] != null) { db.collection("students").findOne({'_id' : stuObjList[j]['_id'];}, function(err, origStuObj) { var marker = stuObjList[j]['_id']; var major = stuObjList[j]['major']; }); } if(j == […]

在Node中使用Passport中间件进行Twitter身份validation

我正在开发一个网站与Node.js(使用Express框架)。 为了使用Twitter身份validation,我正在使用passport模块(http://passportjs.org),他的Twitter包装器称为passport-twitter 。 我的服务器端脚本是: /** * Module dependencies. */ var express = require('express') , routes = require('./routes') , user = require('./routes/user') , http = require('http') , path = require('path') , passport = require('passport') , keys = require('./oauth/keys') , TwitterStrategy = require("passport-twitter").Strategy; var app = express(); app.configure(function(){ app.set('port', process.env.PORT || 3000); app.set('views', __dirname + '/views'); app.set('view […]

护照本地策略和cURL

我想用CURLtesting我的node.js + express + passport.jstesting应用程序(RESTful)。 我的代码: var express = require('express'); var routes = require('./routes'); var http = require('http'); var path = require('path'); var passport = require('passport'); var LocalStrategy = require('passport-local').Strategy; // Define the strategy to be used by PassportJS passport.use(new LocalStrategy( function(username, password, done) { if (username === "admin" && password === "admin") // stupid […]

我可以在一个项目中混合使用JS和CoffeeScript吗?

我正在使用ExpressJS和app.js是直的JavaScript。 如果我想使用CoffeeScript,是否必须重写app.js,或者只能使用CoffeeScript编写其他文件?

在Node.Js Express中,“res.render”是否结束http请求?

所以,只有在确定一切已经完成的时候才做“res.render”,对吗? 因为它结束了请求并且射出一个网页。

如何使用Node.js在Heroku中托pipeAngularJS应用程序而不使用yeoman?

我正在尝试使用Node.js将AngularJS的Hello World构build推送到Heroku中。 但有多个视图(partials)。 我首先部署了一个没有使用ngRoute的Hello World,意思是:没有偏见。 这很好,顺利。 然后,我尝试推2个简单的部分。 但我相信这个问题是主办应用程序,同时要求部分。 我知道这不是正确的方法,我想要你的build议。 这是我的index.html: <!DOCTYPE html> <html ng-app="main"> <head> <meta name="name" content="something"> <title></title> </head> <body> <section ng-view=""></section> <script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.3/angular.min.js" type="text/javascript" charset="utf-8"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.3/angular-route.min.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript" charset="utf-8"> angular.module('main', ['ngRoute']) .config(['$routeProvider', '$http', function ($routeProvider, $http){ console.log('hola'); $routeProvider .when('/', { resolve: **??? I tried with templateUrl but did not work […]

Express Router CRUD API。 不能删除

那么,我正在阅读MEAN机器书,并遵循它的例子。 我想弄清楚我的代码有什么问题,所以不会发出任何DELETE请求。 GET,PUT和POST的作品应该如此。 我有我的server.js这个代码: app.all('*', function(req, res, next) { res.header('Access-Control-Allow-Origin', '*'); res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS'); res.header('Access-Control-Allow-Headers', 'X-Requested-With, content-type, Authorization'); next(); }); var apiRouter = express.Router(); apiRouter.route('/users/:user_id') .get( function (req, res) { User.findById( req.params.user_id, function (err, user) { if (err) res.send (err); res.json(user); }); }) .put( function (req, res) { User.findById(req.params.user_id, function (err, user) […]

Node.js:如何限制HTTP请求的大小和上传文件大小?

我使用Node.js并表示。 我想限制HTTP请求的大小。 比方说,如果有人向我发送超过2MB的HTTP请求,我立即停止请求。 我看了代码,我想如果我改变核心,我可以做到这一点。 但是,有没有办法设置max_request_size或类似的东西呢? 这与我的第二个问题有关。 我使用快递从req.files获取上传的文件。 如果文件大小超过某个文件大小,是否有办法停止将文件写入/tmp文件夹(这是默认的上传行为)?

使用Node + Jade + Express渲染存储在Mongo(GridFS)中的图像

我有一个使用GridFS存储在Mongo中的小.png文件。 我想使用Node + Express + Jade在我的Web浏览器中显示图像。 我可以检索图像很好,例如: FileRepository.prototype.getFile = function(callback,id) { this.gs = new GridStore(this.db,id, 'r'); this.gs.open(callback); }; 但我不知道如何使用Jade View Engine进行渲染。 在文档中似乎没有任何信息。 任何人都可以指向正确的方向吗? 谢谢!

findOneAndUpdate与returnNewDocument一起使用:true返回原始文档MongoDB

您好我使用MongoBD与节点js,我用npm install mongodb 我想要更新现有的文档并返回更新的文档,文档已正确更新。 但是它返回的旧文件是指更新前的原始文件。 我已经使用了returnNewDocument:true参数,但没有用。 var filter = { '_id': object_id }, update = { $set: { "status" : data["status"] }, $push: { "statusHistory": { $each: [{ status:data["status"],statusChangedTime:data["statusChangedTime"],comment:data["comment"]}], $position:0, } }, } ,options = { //upsert: false, //multi: false, returnNewDocument: true }; col.findOneAndUpdate(filter, update, options,function(err, res) { if (err) { console.log(err); }else { console.log(res); […]