Articles of express

重新启动node.js群集工作者

我有一个节点应用程序,我使用群集在多个核心上运行。 我遇到了一个问题,当我的应用程序抛出一个exception,工人死亡,不重新启动。 这是有道理的,但我想知道是否有更好的方法来处理重新启动这些工人,而不是必须监视它,或尝试/捕捉或听每一个错误。 我以前永远都用过,而且看起来像这样的东西对于集群来说是很好的。 有没有办法重新启动它们,或者在顶层添加“pokemon”exception处理,以确保我的工作人员不会在意外exception情况下死亡?

获得刚刚添加的行的最佳方法。 Heroku + Node + Postgres

获得刚刚添加的行的最佳方法是什么?我正在使用Heroku,Node和Postgres以及Expressjs。 我希望能够做到这样的事情。 app.post( '/', function( req, res ){ client.query("INSERT into ..", function( err, result ){ res.send( result.id ); }); }); 理想情况下,callback将包含刚刚input的行的信息,但其内容只是一个对象 { rows:[] } 有没有一个很好的方法来获得我刚添加的那一行,谢谢。

在Express中渲染玉石时包含其他文件的内容?

我有以下的layout.jade: !!! html head title= title link(rel='stylesheet', href='/stylesheets/style.css') body!= body 在正文中,我想包含另一个文件content.jade的内容。 我想在app.js中这样的事情: app.get('/test', function(req, res){ res.render('layout', { layout: false, body: include content.jade }); }); 但是它给了SyntaxError:'content'意外的标识符。 有没有办法做到这一点?

Node.js:我如何克隆一个带有Underscore的对象,然后将新的属性分配给克隆?

我正在使用node和express来处理REST API。 我正在使用mongoose.js,我正在创build一个新的用户文件在我的分贝。 没有汗水,效果很好。 当我想添加一个属性到.save()返回的json对象时,问题就出现了。 我想在保存之后添加这个属性,因为这是一个使用REST接口的客户端的标志,但是这不是我想要保存到数据库的东西。 这是我的例子: var _ = require('underscore'); var user = new User({"username" : "Joe"}); user.save(function(err, newuser){ if (err) return next(err); var nu = _.clone(newuser); nu.newbie = 'true'; res.send(JSON.stringify(nu)); }); 下面是一个示例响应(这是在nu ): { "username": "Joe", "_id": "4f343383a5503c452a000002", } 正如你所看到的,我试图添加nu.newbie属性,并将其设置为true并且不起作用。 我相信这是某种范围或参考问题。 有任何想法吗?

我应该如何构build我的节点/ express / mongodb应用程序?

我只是好奇人们如何构build他们的Node.js应用程序? 通常我创build模型/视图/控制器/这很简单。 但是我对Node.js场景还是比较陌生,我正在尽可能地学习这个社区是如何工作的。 欢迎任何答复,谢谢!

Node.js / Express忽略iOS JSON POST

我试图从一个iOS应用程序的数据发布到Node.js / Express。 我无法得到它的工作; Node / Express似乎忽略了我的请求,当我尝试从我的应用程序。 但是,如果我导航到我想要在Web浏览器中发布的同一个URL,则Node / Express将作出响应。 这是处理传入请求的Node / Express代码: var express = require('express'); var app = express.createServer(); app.configure(function(){ app.use(express.bodyParser()); }); app.get('/', function(req, res) { res.write('nothing to see here…'); res.end(); }); app.get('/test', function(req, res) { console.log('handling post!'); console.log(JSON.stringify(req.body)); res.end(); }); 这就是我试图将JSON发布到Node: // Create request data. NSString* jsonData = @"{\"test\" : \"someMoreTest\"}"; NSData* […]

Express(Node.js) – 有条件地包含CSS和JS文件

我目前正在使用Node.js的Express框架,并且在每页(路线)的基础上包括样式表和JavaScript文件。 我正在使用具有以下内容的routes / index.js文件的默认Express设置: exports.index = function(req, res){ res.render('index', { title: 'Index Page Test' }) }; exports.browse = function(req, res){ res.render('browse', { title: 'Browse Page Test' }) }; 上面的路线工作正常,并按预期将index.jade和browse.jade加载到layout.jade的“body”中。 但是,索引路由所需的资源(CSS和JS文件)与浏览路由所需的资源并不相同。 我有可能传递一个数组到包含所需资源的layout.jade模板,只是让它循环? 我试图通过以下方式来做到这一点: Index.js(路线) scripts: [ 'javascripts/jquery.js', 'javascripts/easel.js', 'javascripts/script.js' ] 其次是: Layout.jade each js in scripts script(src= js) 但是,它只是抛出一个错误,说“脚本没有定义”。 我很确定我没有这样做。 此外,只是添加,我偶然发现了另一个类似的StackOverflow问题在这里: Node.js与Express:导入客户端JavaScript使用Jade视图中的脚本标记? 但我并不太在意那里显示的方法(它需要一个额外的帮手)。 如果可能的话,我想坚持模板引擎本身提供的function。 谢谢。 编辑:如果有帮助,我想实现类似这样的事情: […]

Weinre在heroku上

我正在尝试在Heroku上设置Weinre ,但是我遇到了一些问题。 我设法构build应用程序,只需使用一个package.json与weinre npm依赖和一个Procfile,看起来像下面 web: node_modules/weinre/weinre –httpPort $PORT 起初一切似乎工作,客户端显示的用户界面,JS文件加载正常,但debugging不起作用,并没有客户端在服务器端出现。 在查看日志的同时,我意识到每次包含/ ws / target / *或/ ws / client / *的请求都会收到404错误 2012-05-31T22:37:53+00:00 heroku[router]: GET xxxx.herokuapp.com/target/target-script.js dyno=web.1 queue=0 wait=0ms service=10ms status=200 bytes=190900 2012-05-31T22:37:36+00:00 heroku[router]: GET xxxx.herokuapp.com/ws/target/t-3 dyno=web.1 queue=0 wait=0ms service=3ms status=404 bytes=9 2012-05-31T22:36:39+00:00 heroku[router]: POST xxxx.herokuapp.com/ws/client/c-1 dyno=web.1 queue=0 wait=0ms service=40ms status=404 bytes=9 这个设置工作本地没有问题。 我也尝试了与–boundHost 0.0.0.0并得到了同样的错误。 当我使用我的heroku应用程序域/子域作为主机我得到weinre: error […]

在非Javascript服务器上使用基于Javascript的服务器有什么好处?

免责声明:这个问题会有些开放。 我也希望回复部分基于开发者偏好。 我最近一直在做一些关于Express.js的研究(通过Node.js),我正在努力寻找如何将这些技术应用到我当前开发网站的工作stream程中。 最近我一直在Wordpress或Ruby on Rails中工作,之前将运行在Apache上,后者将运行在它自己的专有服务器上(我假设)。 现在也许我只是没有理解的东西,但我看不到有利于获得支持基于Javascript的框架/服务器。 如果在我的工作stream程的这一部分有明确的优势,他们会是什么? 我一直没有find任何方法来适应(每说)一个Rails应用程序或Wordpress网站。 有人能指出我在已经使用的这些技术之上的一些更好的帮助吗? 最后一个问题,如果有人在浏览器中禁用Javascript,会发生什么? 基于Javascript的服务器如何反应(如果有的话)?

Node.js + Express:无需重新加载页面即可上传文件

我正在使用Node.js创build一个聊天应用程序,并希望有一个file uploadfunction。 虽然我可以得到file upload,浏览器将始终被redirect到另一个链接或页面刷新,这当然扰乱了聊天。 首先,我尝试使用Express来做到这一点: index.html的: <form id="fileSendButton" action="/" method="post" enctype="multipart/form-data"> <input type="text" name="title"><br> <input type="file" name="upload" multiple="multiple"><br> <input type="submit" value="Upload"> </form> app.js: app.post('/', function(req, res){ //some validation and rename file res.send(); return false; }); 接下来,我尝试使用AJAX,但仍然无法做到这一点,每当AJAX POST到Node.js服务器,它会重新加载页面。 无论如何,我的AJAX代码: index.html的: $.ajax({ type: "POST", url: "/", data: formdata, processData: false, contentType: false, success: function (res) { document.getElementById("chatText").innerHTML […]