Articles of expression

Express服务器:错误:请求的范围不满足

我写我的第一个节点的Web服务器(随意给我反馈),使用快递和Gith部署。 问题是一旦部署,我收到了下面的错误,如果我通过pm2运行脚本,这个过程似乎被删除。 有任何想法吗? 脚本附在下面。 sudo node server.js Error: Requested Range Not Satisfiable at SendStream.error (/home/gareth/node_modules/express/node_modules/send/lib/send.js:145:16) at SendStream.send (/home/gareth/node_modules/express/node_modules/send/lib/send.js:371:19) at /home/gareth/node_modules/express/node_modules/send/lib/send.js:323:10 at /home/gareth/node_modules/newrelic/node_modules/continuation-local-storage/node_modules/async-listener/glue.js:177:31 at Object.oncomplete (fs.js:107:15) Completed deployment Server.js /* Webserver Should use port 80 on production Mongo DB for database – http://docs.mongodb.org/manual/tutorial/ Use pm2 to ensure it runs forever and load balanced NPM https://www.npmjs.org/package/fs https://www.npmjs.org/package/express […]

Node.JS正则expression式引擎在大input时失败

这个问题有点复杂,Google使用并没有什么帮助。 我会尽量只介绍它的相关方面。 我有一个大的文件大致如下格式: 示例input : ABC is a word from one line of this document. It is followed by some random line PQR which happens to be another word. This is just another line I have to fix my regular expression. Here GHI appears in the middle. This may be yet another line. VWX is […]

为基于nodejs的MVC平台构build一个插件系统

我希望能够在插件样式系统中为我的应用程序构buildfunction,原因如下: 新的项目可以select哪些插件是必要的,不需要代码function 其他开发人员可以为系统构build插件,而无需太多的核心工作知识。 我真的不知道如何去实施这个。 我想有一个plugins文件夹来主办这些分开,但我想我的问题是: 插件如何与核心系统交互? 文件夹结构如何工作? 每个人都会拥有标准的MVC结构:控制器,服务,模型,视图等? 我想如果有人有一个教程或一些文件有关这种技术,这将是有益的。 我已经做了一些search,但是它们与实际使用的代码有很密切的关系,而不是概念,而且我也没有发现任何与nodejs特别相关的东西。

快速请求身体validation

我想创build一个快速中间件看起来像这样: function validate (options) { var defaultOptions = {…} , validations = _.extend(defaultOptions, options); return validate (req, res, next) { /* Use some sort of validation framework where I can pass `validations` into*/ next(someErrors || null) } } 我已经用中间件选项以及窗体查看了两个节点validation器 ,但是他们都没有看起来像是可以将“规则集”传递给它们,并让它们针对提供的input运行规则。 有没有人有任何build议,如何做到这一点与这些模块或另一个,我还没有find呢? 我将不得不推出自己的做法吗? UPDATE 这确实是为了validation表单post。 我知道不会有一个中间件将会覆盖整个站点的所有post; 这将只用于某些路线。 我想要可重复使用的中间件,因为我们正在制作具有通用路由的API,并期望我们希望以类似的方式validation常见的表单体,并且可以根据每个API调整该表单。

Node.js – express – jade – 编译SASS / LESS

任何人都有一个真正的新手指南nodejs – express – SASS / LESS? 我一直无法得到这个工作。 我现在的例子是尽可能的没有 var express = require('express'), less = require('less'), app = express.createServer(); var pub_dir = __dirname + '/public'; app.configure(function(){ app.use(express.compiler({ src: pub_dir, enable: ['less'] })); app.use(express.staticProvider( pub_dir )); }; app.configure('development', function(){ app.use(express.errorHandler({ dumpExceptions: true, showStack: true })); }); 文件style.css.less位于pub_dir ,我可以直接访问它,样式是 @brand_color: #4D926F; body { color: @brand_color; } 据我了解,编译应该在启动时发生,并且在src […]

如何从Expresspath映射中自动生成API文档?

我在nodejs + Express中开发了一个REST API,并且在README文件中同时logging了我的API,我想知道是否可以自动化它。 例如给出: app.get('/path/to', dosomething); app.post('/path/to/:somethingelse', scream); 我希望它自动生成这个 GET: /path/to dosomething POST: /path/to/:somethingelse scream

Express Session + Angular:无法访问connect.sid cookie

有一些我真的不明白在这里: 我有expression在服务器端运行,会话初始化。 app.use(express.session({ secret: 'mySecret' }) })); 正如在这篇文章中提到的使用Connect混淆会话ID ,它发送一个connect.sid cookie到任何请求。 在客户端,我想读取这个cookie的内容,感觉不可能: angular.module('myApp.controllers', ['ngCookies','myApp.services']) .controller('homeCtrl', function($scope, $cookies) { $cookies['test']='myValue'; console.log($cookies); }); 当我运行这个,我得到这个对象在日志: Object {test: "myValue"} ,而如果我去在Chromedebugging器的资源选项卡,我可以看到两个cookies: 我究竟做错了什么 ? 从angular度访问服务器制作的cookie是不可能的? 谢谢

节点检查员与Express 4

我试图运行一个Express 4应用程序运行节点检查器 – 我运行这个在stream浪者箱,但能够查看浏览器中的页面没有任何问题(我有stream浪机上的端口可用于主机)。 我使用npm start或node –debug bin/www npm start应用程序,然后启动节点debugging器bin/www 。 我在浏览器中加载检查器,它在第一行打到初始断点,但在页面上执行任何操作以debugging将触发断点的操作,导致EADDRINUSE (又名端口正在使用)错误。 我有点困惑,可能是什么原因造成这个,但是,这是非常可能的,我使用的命令,可以在Express 3,而不是4的。另外,也许有一些configuration我缺less运行debugging器主机浏览器,但在stream浪盒上运行检查员?

(Node.js / Express.js)错误:架构尚未注册模型“文档”

我试图通过Dailyjs.com上的Nodepad教程(在此处find)工作。 当我尝试执行时,我最终停下来(在tut的第2步之后): Error: Schema hasn't been registered for model "Document". Use Mongoose.define(name, schema) at Mongoose.model (/usr/local/lib/node/.npm/mongoose/1.0.16/package/lib/mongoose/index.js:138:13) at Object.<anonymous> (/root/Repos/nodepad/models.js:3:10) at Module._compile (module.js:374:26) at Object..js (module.js:380:10) at Module.load (module.js:306:31) at Function._load (module.js:272:10) at require (module.js:318:19) at Object.<anonymous> (/root/Repos/nodepad/app.js:10:16) at Module._compile (module.js:374:26) at Object..js (module.js:380:10) 大多数情况下,我是一个完整的noob在这里,所以我真正需要的不是一个“做到这一点,使其工作”的答案,但如果你不介意,解释这个错误的实际原因是什么。 如果需要的话,我可以发布我现在的实际代码,如果这是一个令人痛苦的简单问题,请道歉。 models.js: var mongoose = require('mongoose'); mongoose.model('Document', { properties: ['title', 'data', […]

res.json()和res.end()之间的性能差异

我想用Node和Express发送一个JSON响应。 我试图比较res.end和res.json的性能。 版本1:res.json res.json(anObject); 版本2:res.end res.setHeader('Content-Type', 'application/json'); res.end(JSON.stringify(anObject)); 运行一些基准,我可以看到第二个版本比第一个版本快了近15%。 如果我想发送一个JSON响应,是否有一个特殊的原因,我必须使用res.json ?