首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用node.js发送文件

如何使用node.js发送文件
EN

Stack Overflow用户
提问于 2012-02-17 08:01:47
回答 2查看 75.5K关注 0票数 28

如何在node.js/express上发送文件。

我正在使用Rackspace Cloudfiles,想要将图像/视频发送到他们的远程存储,但我不确定它是否像读取文件(fs.readFileSync())并在请求体中发送数据那么简单,或者是这样吗?

标头应该是什么。

如果它是几GB大小的非常大的文件怎么办?

是否可以使用superagent (http://visionmedia.github.com/superagent)来执行此操作,或者是否有更好的库来发送文件?

请给我一些关于这方面的信息。

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2013-02-13 11:27:22

代码语言:javascript
复制
app.get('/img/bg.png', function(req, res) {
  res.sendFile('public/img/background.png')
})

https://expressjs.com/en/api.html#res.sendFile

使用"res.sendFile“。"res.sendfile“已弃用。

票数 55
EN

Stack Overflow用户

发布于 2012-02-18 14:01:11

对于大文件,您将希望使用node.js的概念,即通过管道将IO流连接在一起。您希望打开本地文件进行读取,启动对rackspace的HTTP请求,然后通过管道将数据事件从文件读取流程传送到HTTP请求流程。

Here's an article on how to do this

Superagent适用于小文件,但由于superagent API假定在启动请求之前已将整个请求正文加载到内存中,因此它不是传输大文件的最佳方法。

通常,您不需要特别担心请求标头,因为节点的HTTP请求库将为您发送适当的标头。只要确保你使用你的应用程序接口需要的任何超文本传输协议方法(可能是POST),对于rackspace,你也需要在你的应用程序接口令牌中添加X-Auth-Token额外头。

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

https://stackoverflow.com/questions/9321027

复制
相关文章

相似问题

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