首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在NodeJS中,pkgcloud中的“流和管道能力”意味着什么?

在NodeJS中,pkgcloud中的“流和管道能力”意味着什么?
EN

Stack Overflow用户
提问于 2013-02-06 09:54:13
回答 1查看 1.2K关注 0票数 1

我的问题是让图片上传到亚马逊的工作。我正在寻找一个解决方案,不保存文件在服务器和,然后上传到亚马逊。

我在谷歌上找到了pkgcloud,在README.md上写着:

特别注意,使方法是流和管道的能力.

有人能解释一下这意味着什么吗?如果这是我要找的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-06 10:05:12

Yupp,这意味着您找到了正确的s3库。

它的意思是这个库公开“流”。下面是定义流的API:http://nodejs.org/api/stream.html

使用节点的流接口,您可以将任何可读流(在本例中是POST的主体)输送到任何可写流(在本例中是S3上载)。

下面是一个示例,说明如何直接将文件上传到支持流的另一种库:如何在不写磁盘的情况下在POSTed中处理Express.js文件

编辑:下面是一个例子

代码语言:javascript
复制
var pkgcloud = require('pkgcloud'),
      fs = require('fs');

var s3client = pkgcloud.storage.createClient({ /* ... */ });

app.post('/upload', function(req, res) {
  var s3upload = s3client.upload({
    container: 'a-container',
    remote: 'remote-file-name.txt'
  })

  // pipe the image data directly to S3
  req.pipe(s3upload);      
});

编辑:回答完聊天中出现的问题:

由于流魔法,req.end()将自动调用s3upload.end()。如果OP想在req的端做任何其他事情,那么他可以很容易地做到:req.on('end', res.send("done!"))

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14726052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档