我一直在努力寻找这个问题的答案:我需要通过Node.Js Express应用程序上传文本/ html文件,并将其内容保存到变量中以进行进一步处理。

我当然可以制作多部分表格,然后发布内容,但是到目前为止,我只能访问req.files ,其中包含有关文件的信息,但不包含实际内容。

如何从文件中获取实际的text / html内容?

我不想将其保存到我的服务器,只需将内容传递到我的应用程序并删除文件,所以我不想使用像formidable这样的模块。

有人可以帮忙吗?

谢谢!

#1楼 票数:4

multer https://github.com/expressjs/multerinMemory: true选项inMemory: true使用。

作为一个粗略的例子,您将想要做这样的事情。

app.post('test', function(req, res, next) {
  var result = ''; 
  multer({
    inMemory: true,
    onFileUploadData: function(file, data) {
      result += data;
    },  
    onFileUploadComplete: function(file) {
      console.log(result); // This is what you want
    }   
  })(req, res, next);
});

#2楼 票数:4 已采纳

该文件默认情况下保存在一个临时文件夹(可能是/ tmp)中。 您需要打开文件,读取其内容,然后将其删除。

您将要使用以下API: http : //nodejs.org/api/fs.html

您可以这样做:

fs = require('fs');

fs.readFile(req.files.path, function (err, data) {
  if (err) throw err;
  // data will contain your file contents
  console.log(data)

  // delete file
  fs.unlink(req.files.path, function (err) {
    if (err) throw err;
    console.log('successfully deleted ' + req.files.path);
  });      
});

  ask by Dmitry Paranyushkin translate from so

未解决问题?本站智能推荐:

1回复

Node.js/Express应用程序中的测试环境

我刚开始使用Node,我一直在关注各种教程。 我创建了一个Express应用程序,并设置了Mongoose和Jasmine。 如何配置我的规格以便我可以: 创建模型,在每个规范后自动清理它们 使用不同的数据库来创建测试对象(比如myapp_test) 以尽可能干的方式执
1回复

在Node.js/Express应用程序中运行Grunt

我有一个Node.js / Express.js应用程序,该应用程序使用以下方式来结构化 因此,大致如下所示: 现在的工作方式是/views/中有.hjs(Hogan)文件,这些文件显然从未编译过,而是由渲染引擎直接使用。 但是,在/public/ ,.less文件默认情况下被编译为
1回复

在Node.js和Express应用程序中重写URL

我正在使用带有参数(:slug)的GET方法在我的网站上显示我的帖子; 如果我单击“ domain.com/pink-car”,则app.get('/:slug'可以正常工作,并响应来自mongodb的“ pink car”帖子,但是如果我输入这些,我也可以使用其他GET方法,例如/logi
1回复

Node.js/Express应用程序中的内存消耗

我的应用程序在一个具有512 MB内存的Modulus伺服器上运行。 该应用程序的运行如下所示: 如您所见,执行期间内存增加。 但是,即使没有进一步的请求,它也会无限期地保持在100%。 我担心重复请求时该应用程序的内存消耗。 我需要在Node.js / Express应用程序
2回复

使用Express在Node.js应用程序中显示表单验证错误的最佳方法?

我们的注册和登录表单需要服务器端验证逻辑。 我想提出在客户端上为每个输入块显示消息的最佳方法。 申请流程: 客户端表单提交 在节点上验证 重定向到在步骤1中呈现表单的视图。 我倾向于req.flash()来显示表单输入消息,但也许有更多的OOP方法呢?
3回复

在Express/Node.Js应用程序中的res.redirect上显示一条消息

我目前使用res.error('message'); 在我使用res.redirect(url);加载的页面上显示一条消息res.redirect(url); 在我的Express / Node.js应用中。 如果我不希望它成为错误消息,但还有其他显示消息的方式吗? 谢谢!
1回复

Node.JS/Express应用程序中的Jade模板找不到外部Javascript文件?

我有一个使用Jade模板引擎的Node.JS / Express应用程序。 我有一个JavaScript文件,该文件是目录中的正上方我的看法目录包含我的玉意见。 给定下面的代码,我认为该视图应该能够找到引用的服务器端Javascript文件,名为 common_routines ,但是当请求
1回复

如何在node.js应用程序中通过express正确访问应用程序变量集?

我正在构建一个node.js服务器,我的文件夹结构如下所示: server.js 应用程序/ routes.js 应用程序/路由/ users.js 我的问题是我不确定如何在users.js文件中使用app变量。 我是否需要在此文件中再次要求快递并进行设置,或者有更好/更