Articles of express

RangeError:无效的状态码:0

我有一个问题,当我在这个应用程序上尝试一个POST请求时,得到以下错误代码(记住我是一个初学者node.js / js程序员): 错误: [20:22:28] [nodemon] starting `node app.js` Running server on 3000 Mon, 27 Jun 2016 19:22:31 GMT express deprecated res.send(status, body): Use res.status(status).send(body) instead at routes\edit.js:35:25 c:\Users\Matt\WebstormProjects\ghs_restart\node_modules\mongodb\lib\utils.js:98 process.nextTick(function() { throw err; }); ^ RangeError: Invalid status code: 0 at ServerResponse.writeHead (_http_server.js:192:11) at ServerResponse._implicitHeader (_http_server.js:157:8) at ServerResponse.OutgoingMessage.end (_http_outgoing.js:573:10) at ServerResponse.send (c:\Users\Matt\WebstormProjects\ghs_restart\node_modules\express\lib\response.js:204:10) at ServerResponse.json (c:\Users\Matt\WebstormProjects\ghs_restart\node_modules\express\lib\response.js:249:15) […]

使用Express的Node.js:如何redirectPOST请求

我想从一个URL请求redirect到另一个'POST'请求,如下所示: var app = require('express')(); app.get('/', function(req, res) { res.redirect('/test'); }); app.post('/test', function(req, res) { res.send('/test page'); }); app.listen(3000, function() { console.log('listenning on port:3000'); }); 但是,我不能redirect到'/ test'页面,因为这是一个POST请求。 那么我该怎么做才能使redirect工作,保持“/testing”请求POST?

如何在node.js和mongodb中实现geoip

我在node.js中看到了一些使用geoip的例子,例如https://github.com/kuno/GeoIP.git和https://github.com/wadey/node-geoip 。 然而,我想要的是显示地图显示geoip为特定的用户。如何实现。

Passport身份validationcallback不传递req和res

这个身份validation正常工作,我得到一个redirect: server.post(authPostRoute, passport.authenticate( 'local' , { successRedirect: '/', failureRedirect: '/login' } )); 这个authentication在呼叫回叫后挂起: server.post(authPostRoute, passport.authenticate( 'local' , function(){ console.log('Hitting the callback'); console.log(arguments)} )); 这logging了以下内容: { '0': null, '1': { id: [Getter/Setter], firstName: [Getter/Setter], lastName: [Getter/Setter], email: [Getter/Setter], addedOn: [Getter/Setter], active: [Getter/Setter], password: [Getter/Setter] }, '2': undefined } 但在整个文档( http://passportjs.org/guide/authenticate/ )看起来好像它通过req和res,但它显然不是。 然后调用callback的代码: node_modules \护照\ LIB \中间件\ […]

Express服务器发送空的PDF文件

我有一个路由,发送一个PDF文件: app.get('/teste',function(req,res,next){ res.setHeader('content-type','application/pdf'); res.download(app.get('appPath')+'/teste.pdf'); } 我尝试使用另一种解决scheme,或多或less做同样的事情: app.get('/teste',function(req,res,next){ res.setHeader('content-type','application/pdf'); fs.createReadStream(app.get('appPath')+'/teste.pdf').pipe(res); } 和 app.get('/teste',function(req,res,next){ res.setHeader('content-type','application/pdf'); res.sendfile(app.get('appPath')+'/teste.pdf'); } 我的问题是,当我在浏览器中询问这条路线时,我收到一个与原始文件页数相同的空pdf文件。 我用app.use(express.bodyParser());configuration了我的快递服务器app.use(express.bodyParser()); 。 任何人都可以帮助我?

mongodb是否只运行MongoDB版本1.4以上?

我想了解nodejs,express和mongodb我正在运行mongodb v 2.0.6和最新的nodejs和expression并试图通过mongoskin连接快速应用程序与mongodb。 问题是: npm ERR! peerinvalid The package mongodb does not satisfy its siblings' peerDependencies requirements! npm ERR! peerinvalid Peer mongoskin@1.4.13 wants mongodb@~1.4 这是否意味着mongoskin只能使用mongodb v 1.4? 这个版本对我来说是旧的(现在是3)

使用非连接默认会话存储的优点是什么?

对于快速应用程序,我已经看到有一个connect-mongodb和connect-redis中间件用于存储会话,但我不明白为什么这是必要的 – 默认的内存会话存储有什么问题? 是否需要跨多台机器同步会话的大规模应用程序? 另外,任何人都可以提供最快的会议商店的任何基准/技巧? 我的猜测是Redis由于其更简单的键/值存储。

使用passport.js将本地策略连接到另一个(Facebook,Twitter,Google等)

我有一个node.js应用程序使用通行证(与一个修改的passport本地login策略)进行身份validationpipe理。 我想允许用户使用护照策略连接他们的社交networking帐户,但是从我所看到的现有身份validation(在请求对象上)在新的身份validation时被覆盖。 我应该如何处理这个?

Heroku无法在heroku(Node.js)上find本地模块

我正在做一个Node.js应用程序,并使用一个公开我的twitter API令牌/秘密的config.js文件。 我这样做是因为我计划在完成应用程序后开放源代码,并且希望保留这些私有的(因此已经把这个文件放在我的.gitignore 。 反正,对我的问题 – 我得到以下错误日志: 2012-04-09T22:41:12+00:00 app[web.1]: node.js:134 2012-04-09T22:41:12+00:00 app[web.1]: ^ 2012-04-09T22:41:12+00:00 app[web.1]: throw e; // process.nextTick error, or 'error' event on first tick 2012-04-09T22:41:12+00:00 app[web.1]: Error: Cannot find module './config' 2012-04-09T22:41:12+00:00 app[web.1]: at require (module.js:348:19) 2012-04-09T22:41:12+00:00 app[web.1]: at Function._load (module.js:266:25) 2012-04-09T22:41:12+00:00 app[web.1]: at Function._resolveFilename (module.js:320:11) 2012-04-09T22:41:12+00:00 app[web.1]: at Object.<anonymous> (/app/app.js:6:19) 2012-04-09T22:41:12+00:00 app[web.1]: […]

如何处理callback函数中的响应(例如nodejs中的cradle)

我在“nodejs”中使用“express”和“cradle”。 如果我请求我的数据库,我必须定义一个callback来处理响应。 不幸的是我没有访问res(响应)在我的callback函数。 这个问题的最佳做法是什么? 这是我的代码。 var cradle = require('cradle'); var db = new cradle.Connection().database('guestbook'); app.get('/guestbook', function(req, res) { db.view('guestbook/all', function(err, doc) { console.log(doc); // How can I use res in this callback // to send the response? }); });