【问题标题】:Upload large files through node.js express server, hosted in GAE通过 node.js express 服务器上传大文件,托管在 GAE
【发布时间】:2016-12-29 01:52:15
【问题描述】:

我需要通过托管在 Google App Engine 中的节点服务器上传大型(超过 300 MB)文件。我可以使用 xhr.upload 上传文件并且它在本地工作正常,但在 GAE 中我得到 413 - 请求实体太大,似乎 GAE 的内容限制为 32MB大小。

在探索的过程中,我遇到了 google BlobStore API,但它似乎不支持 NodeJS。

你们能建议我哪种方法最好吗?

提前致谢。

【问题讨论】:

    标签: node.js google-app-engine google-cloud-storage large-file-upload app-engine-flexible


    【解决方案1】:

    您可以将最大为 5GB 的文件直接上传到 Google Cloud Storage。无需为此任务使用(和付费)您的 App Engine 实例。

    您可以通过在文件上传表单中设置上传 URL 来实现。查看 Cloud Storage API。

    【讨论】:

    • 感谢您的回复。我会试试 Cloud Storage API,这个 API 支持 nodejs 吗? ...可以说,在将流上传到存储之前,我需要读取流以进行一些服务器端验证。通过 GAE 上传的任何其他建议。
    • GAE 不支持流式传输。所以你不能用它来处理大文件。您可以使用 Compute Engine 实例来完成这项工作。当用户想要一次下载多个文件时,我在 FileMambo.com 中使用它来创建存档 - Compute Engine 实例从 Cloud Storage 中提取文件,将它们以块的形式添加到存档中,然后将此存档流式传输给用户。在 Compute Engine 上,您可以使用 Node.js 或任何其他运行时。
    猜你喜欢
    • 1970-01-01
    • 2017-08-23
    • 2018-05-17
    • 1970-01-01
    • 1970-01-01
    • 2020-09-06
    • 2017-03-01
    • 2017-10-20
    • 2014-12-19
    相关资源
    最近更新 更多