1. 云计算教程网首页
  2. 阿里云

流式上传

本文档介绍如何进行流式上传。

说明 以下示例代码中的 catch 语法,请自行学习 es6 promise、async/await。 SDK 的使用方式,请参考安装。

通过putStream接口来上传一个Stream中的内容。stream参数可以是任何实现了Readable Stream的对象,包含文件流,网络流等。当使用putStream接口时,SDK 默认会发起一个chunked encoding的 HTTP PUT 请求。如果在options指定了contentLength参数,则不会使用chunked encoding

let OSS = require('ali-oss');
let fs = require('fs');

let client = new OSS({
  region: '<Your region>',
  accessKeyId: '<Your AccessKeyId>',
  accessKeySecret: '<Your AccessKeySecret>',
  bucket: 'Your bucket name'
});

async function putStream () {
  try {
  // use 'chunked encoding'
  let stream = fs.createReadStream('local-file');
  let result = await client.putStream('object-name', stream);
  console.log(result);

  // don't use 'chunked encoding'
  let stream = fs.createReadStream('local-file');
  let size = fs.statSync('local-file').size;
  let result = await client.putStream(
    'object-name', stream, {contentLength: size});
  console.log(result);
  } catch (e) {
    console.log(e)
  }
}

putStream();

发布者:佚, 佚名,转转请注明出处:https://www.cms2.cn/aliyun/3123.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code