jjzjj

nodeJS-Express

全部标签

javascript - `util.inherits` 和扩展 NodeJS 原型(prototype)的区别

我从0.11/0.12开始就一直在使用Node,所以如果这是一个来晚了的问题,请纠正我。我试图理解使用util.inherits(Son,Dad)和简单地扩展Son.prototype=[new]Dad()的原型(prototype)之间的区别.对于这个例子,我继承了一个Transformstream首先使用util.inherits:varutil=require('util')varTransform=require('stream').Transformutil.inherits(TStream,Transform)functionTStream(){Transform.call

javascript - 当从客户端传递到 nodeJS 时,String 变成了 Object

我正在使用yeomanangular-fullstack来生成我的项目。所以客户端是angularJs(typeScript),后端是nodeJs。问题是我有一个变量,当我将它打印到控制台时,我得到一个很长的字符串(如果你需要知道它来自googleplacesapi的photo_reference)。当我通过http.get将其传递给nodeJSapi,并将其打印到日志时,我得到了响应对象对象。主Controllerfor(varphotoofresponse.data.result.photos){this.getImages(photo);console.log(photo.pho

javascript - NodeJS express 。 res.send() 在分配给另一个 var 时失败

我正在使用Expressv3.4.4。当我尝试这样做时:varcb=res.send;cb(result);我得到一个错误:...\node_modules\express\lib\response.js:84varHEAD='HEAD'==req.method;TypeError:Cannotreadproperty'method'ofundefined在代码中,工作一个:workflow.on('someEvent',function(){res.send({error:null,result:'Result'});});不工作:workflow.on('someEvent',fu

javascript - 如何在 express.js 中抛出 404 错误?

在app.js中,我有//catch404andforwardtoerrorhandlerapp.use(function(req,res,next){varerr=newError('NotFound');err.status=404;next(err);});所以如果我请求一些不存在的url,比如http://localhost/notfound,上面的代码将会执行。在像http://localhost/posts/:postId这样的url中,我想在访问一些不存在的postId或删除的postId时抛出404错误。Posts.findOne({_id:req.params.id,

javascript - 使用异步/等待时在 Express 中捕获未处理的异常

看下面的TypeScript代码:app.get('/test_feature',function(req:Request,res:Response){thrownewError("Thisisthebug");});app.use(logErrors);functionlogErrors(err:Error,req:Request,res:Response,next:NextFunction){console.log(err);mongoDal.log(err.message,err);next(err);}在这里,我在请求处理程序中抛出一个错误,它会按预期触发logErrors函数

javascript - 我可以在客户端使用 PostgreSQL (pg) (express/node.js)

我想在客户端使用PostgreSQL。那可能吗?我可以要这个代码吗?在我的server.js中varpg=require('pg');在我的客户端varconString="postgres://postgres:pass@localhost/mydb";varclient=newpg.Client(conString);client.connect();varquery=client.query("SELECT*FROMusers");query.on('row',function(row){alert(row.name);});我试过这段代码,但没有任何反应。尽管我可以使用与此类似

javascript - Express + socket.io : socket. io 客户端脚本是 404

这让我发疯了……虽然我有一个Express+Socket.io的工作版本,但我似乎无法通过在新项目文件夹中安装开箱即用的NPM来重现它。谁能指出我所缺少的......?这是我的过程:我在我的项目目录(pwd)中创建了一个node_modules文件夹,然后执行:npminstallexpressnpminstallsocket.io运行这两个命令会将包按预期放置在我项目的node_modules文件夹中。现在我使用以下内容设置我的服务器:varexpress=require('express'),server=express.createServer().use(express.sta

javascript - 通过 gm 流式传输使用 Express.js 上传的文件以消除双写

我正在使用Express.js并有一个上传图像的路径,然后我需要调整这些图像的大小。目前我只是让Express将文件写入磁盘(我认为它在幕后使用node-formidable)然后使用gm调整大小(http://aheckmann.github.com/gm/)将第二个版本写入磁盘。gm(path).resize(540,404).write(dest,function(err){...});我读到你可以在将node-formidable文件流写入磁盘之前获取它,并且由于gm可以接受流而不是只是一个路径,我应该能够通过消除对磁盘的双重写入来传递这个权利。我想我需要覆盖form.onPa

javascript - express /Node.js : Render custom javascript as response

在我的应用程序中,我需要提供一个API(类似于GoogleMapsjavascriptAPI),通过它我可以发送一些自定义javascript(带有一些session和请求相关信息)作为响应。然后使用javascript在UI上绘制一些图形。我使用ExpresswithJade作为我的模板引擎。我目前使用的代码是:app.use('/graph',function(req,res){//sendoutgraphdatavarvar_name=req.session.var_name//fetchsomethingfromsessionvargraphData=fetchGraphDat

javascript - Nodejs EventEmitter.once() 如何工作?

来自nodejssourcecode(LOC179),我们有以下内容:EventEmitter.prototype.once=function(type,listener){/**...**/functiong(){/**...**/}g.listener=listener;//=>???this.on(type,g);returnthis;};到目前为止,我的想法是这样的:EventEmitter.once()设置一个type事件,并在通过调用回调listener后立即将其删除g()。但是g.listener=listener;这行到底做了什么?它是否在构造函数g()调用时为构造函数