Tag: expression

express + jade:提供的局部variables在视图中是未定义的(node.js + express + jade)

我正在使用node.js实现一个webapp,并使用jade模板引擎来expression。 模板渲染良好,可以访问帮助器和dynamic帮助器,但除了由“express”提供的“body”局部variables以外,局部variables不在我的layout.jade中可用和定义的位置。 这是一些代码: app.set ('view engine', 'jade'); app.get ("/test", function (req, res) { res.render ('test', { locals: { name: "jake" } }); }); 这是test.jade: p hello =name 当我删除第二行(引用名称),模板呈现正确,在网页中显示单词“你好”。 当我包含= name时,会抛出一个ReferenceError: 500 ReferenceError: Jade:2 NaN. 'p hello' NaN. '=name' name is not defined NaN. 'p hello' NaN. '=name' 我相信我会跟随玉石,并且就局部variables而言精确地expression例子。 我做错了什么,或者这可能是快递或玉器的错误?

使用process.on('uncaughtException显示一个500错误页面

我正在开发一个快速应用程序。 我目前在我的server.js中有以下内容 process.on('uncaughtException', function (err) { console.log( "UNCAUGHT EXCEPTION " ); console.log( "[Inside 'uncaughtException' event] " + err.stack || err.message ); }); 每当出现错误时停止服务器崩溃,但是,它只是坐在那里… 有可能取代console.log,发送一个500错误页面的错误细节?

Firebase和Express之间的核心区别是什么?

现在我正在探索如何使用Express和MongoDB编写API。 我也使用Angular做我的路线和意见。 我知道Firebase和AngularFire可以做到这一点,所以我可以绕过使用Express(或所以我认为),并让我的应用程序是实时的。 在Chris Esplin的这篇文章中,他表示他不能放弃Express,因为在使用他的npm包的“Quiver-Invoice”(包含Firebase,Stripe和MailChimp的Mandrill服务)时,他需要它来编写promise,而不是使用更简洁的代码。 在这个SOpost里 ,海报说他们需要使用Express&Node来发送电子邮件。 我认为这是不可能的,如果只使用Firebase与Angular。 另外我也看到人们在这里讨论身份validation和安全性差异方面的差异https://groups.google.com/forum/#!topic/firebase-talk/WF9gf–A3Qo 问题(S) 那么Firebase和Express之间的核心区别是什么? 是否有可能像我可以在Express + MongoDB中那样围绕Firebase构build一个API? 是否有可能(或很快就可以)像使用Express一样自定义Firebase服务器?

通过NodeJS和Express检索MySQL查询的所有内容到Jade模板引擎

简单的新手问题,我开始与nodejs,一般来说,我是后端语言的新手。 我设法使用express-js中的默认jade引擎将一个字段从数据库发布到网页。 /** * Module dependencies. */ var express = require('express'); var app = module.exports = express.createServer(); var sqlResult; //MySql var mysqlClient = require('mysql').Client, newClient = new mysqlClient(), Database = 'test', Table = 'test_table'; newClient.user ='root'; newClient.password='password'; newClient.connect(console.log('connected to the database.')); newClient.query('USE '+Database); newClient.query( 'SELECT * FROM '+Table, function selectCb(err, results, fields) { if (err) […]

string.replace不能在node.js express服务器上工作

我需要阅读一个文件,并用该dynamic内容replace该文件中的一些文本。当我尝试string.replace它不工作的数据,我从文件读取。但string它正在working.I使用节点。 js和快递。 fs.readFile('test.html', function read(err, data) { if (err) { console.log(err); } else { var msg = data.toString(); msg.replace("%name%", "myname"); msg.replace(/%email%/gi, 'example@gmail.com'); temp = "Hello %NAME%, would you like some %DRINK%?"; temp = temp.replace(/%NAME%/gi,"Myname"); temp = temp.replace("%DRINK%","tea"); console.log("temp: "+temp); console.log("msg: "+msg); } }); 输出: temp: Hello Myname, would you like some tea? msg: Hello %NAME%, […]

在Node.js上上传二进制文件

我正在使用Flashloggingaudio并将其上传到节点服务器。 Flash客户端是jrecorder的变体。 当用户完成录制时,使用POST请求(不是表单,因为Flash不能创build文件)使用audioByteArray作为POST请求的数据(请参阅此处更多信息 )上传audio。 我能够使用下面的代码在Node-land上正确接收文件,但是出来的audio被破坏,你什么都听不到。 这样说,文件的内容可以播放VLC和其他播放器+ Sox能够编码为MP3。 这是我使用Node时的代码: var express = require('express'); var app = express(); app.use (function(req, res, next) { req.rawBody = ''; req.setEncoding('utf8'); if(req.method.toLowerCase() == "post") { req.on('data', function(chunk) { req.rawBody += chunk }); req.on('end', function() { done(req, res); }); } next(); }); function done(req, res) { fs.writeFile('abc.wav', req.rawBody, 'binary', function(err){ if (err) […]

有没有办法正则expression式引用Node.js中的string?

我想创build一个正则expression式匹配stringfoo ,即使foo包含元字符。 这有时被称为RegExp.quote 。 有没有办法在Node.js环境(或者更广泛地说,v8 / Chrome / WebKit / JavaScript)中执行此操作?

如何检查我的pm2应用程序NODE_ENV是否正在设置?

所以我刚刚第一次部署了一个节点和pm2的站点,然后回去做一些优化和阅读最佳实践等。 我读过,你可以通过设置NODE_ENV=production来获得很多好处。 我在pm2文档中find了这个: [process.json] "env_production" : { "NODE_ENV": "production" } … $ pm2 start process.json –env production 所以,我做了,但我不知道它是否工作。 当试图找出如何检查它,我学会了尝试: $ node > process.env.NODE_ENV > undefined 所以,这不是一个好兆头,但是,由于我对低级别工作的理解有限,我可以猜测,也许pm2会将每个应用程序作为单独的节点进程启动? 所以当我尝试检查时,可能我没有find正确的方法。 另外,我不知道是否必须创build一个新的〜/ .pm2 / dump.pm2文件,因为也许每当这可能覆盖我设置的选项? (因为我用pm2 startup )。 如何检查我的pm2应用程序的NODE_ENV是否已设置?

swagger-node-express:如何从swagger-ui上传文件?

看到这个Q&A,但没有相同的结果作为OP 如何张贴文件在大招? 在我的swagger-node-express API中使用这个规范 exports.saveFile = { 'spec' : { "description" : "Saves a file to filesystem", "path" : "/uploads/file", "notes" : "", "summary" : "POST a file to storage", "method" : "POST", /* "supportedContentTypes" : [ 'multipart/form-data' ], */ "produces":[ "application/json" ], "consumes":[ "multipart/form-data" ], "params" : [{ "name": "File", "description": "The file to […]

angular4和SEO

Express有一个简单的Angular 4项目。 当我尝试使用Googlebot访问我的网站时,它只显示了一个空白页面(AppRoot的innerHTML)。 我以为谷歌声称它的机器人支持Angular 4 / JS网站? 如果这仍然是问题,使用Angular Universal的服务器端渲染真的是最好的解决scheme吗? 就像我必须build立另一台服务器,服务器端提供的应用程序,除了服务于普通的客户端渲染应用程序的主服务器? 如果是这样,我怎么告诉googlebot去端口的服务器端渲染的应用程序和正常的httpstream量去客户端呈现应用程序的端口? 不是抓取工具的HTTPstream量?