node.js - 使用 NodeJS REST API 获取 Google Cloud Storage 的文件上传进度

标签 node.js file-upload progress-bar google-cloud-storage multipartform-data

我正在使用 @google-cloud/storage npm 包从 NodeJS 上传文件。它正在成功将文件上传到谷歌云存储桶。 引用:https://github.com/GoogleCloudPlatform/google-cloud-node/tree/storage-1.1.0#cloud-storage-ga

但对于较大的文件(大小 > 20 MB),我需要在浏览器(客户端 - Chrome、firefox 等)上显示上传进度状态。

我正在将文件作为表单数据提交到 REST API(使用 NodeJS 编写)的 AJAX 请求,然后 REST API 将文件上传到 Google Cloud Storage 存储桶。 注意:我不想将文件直接从 UI(浏览器)上传到 Google 云存储。

但是,我不知道如何通过 NodeJS REST API 将文件上传进度从 Google-Cloud-Storage 发送回 UI。

非常感谢您的建议或相关引用。

最佳答案

  1. 使用 XMLHttpRequest 通过事件监听器跟踪您在 NodeJS 上的进度

  2. 打开一个套接字并从您的事件监听器传输进度消息并在客户端使用它们

引用资料:

  1. https://stackoverflow.com/a/30635818/4465100
  2. http://blog.fossasia.org/file-upload-progress-in-a-node-app-using-socket-io/

关于node.js - 使用 NodeJS REST API 获取 Google Cloud Storage 的文件上传进度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43980338/

相关文章:

javascript - 错误: defined function is not a function

silverlight - 使用网络浏览器上传大于 2Gb 的文件的选项

php - 上传图像(JPEG)时有没有办法检查 DPI?

php - 使用 HTML5 文件 API 在 PHP 服务器上上传 .xls 文件

python - kivy:带有进度条的弹出窗口

android - 自定义不确定进度可绘制缩放

node.js - 如何在 Node.js Express 中实际分离访问日志和错误日志?

javascript - 访问 Express 中的 get 请求返回的对象中的元素时遇到问题

javascript - 运行 Flask Web 服务器是否会阻止 Node.JS 中的 Web 抓取?

javascript - Angularjs $http 和进度条