Skip to content

Commit faaeda5

Browse files
committed
support SSE
1 parent fe1f944 commit faaeda5

File tree

2 files changed

+25
-17
lines changed

2 files changed

+25
-17
lines changed

sdk/advance.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ function sliceUploadFile(params, callback) {
1414
var ChunkSize = params.ChunkSize || params.SliceSize || this.options.ChunkSize;
1515
var AsyncLimit = params.AsyncLimit;
1616
var StorageClass = params.StorageClass || 'Standard';
17+
var ServerSideEncryption = params.ServerSideEncryption;
1718
var FileSize;
1819
var self = this;
1920

@@ -59,6 +60,7 @@ function sliceUploadFile(params, callback) {
5960
FileSize: FileSize,
6061
SliceSize: ChunkSize,
6162
AsyncLimit: AsyncLimit,
63+
ServerSideEncryption: ServerSideEncryption,
6264
UploadData: UploadData,
6365
onProgress: onProgress
6466
}, function (err, data) {
@@ -393,6 +395,7 @@ function uploadSliceList(params, cb) {
393395
var FilePath = params.FilePath;
394396
var SliceCount = Math.ceil(FileSize / SliceSize);
395397
var FinishSize = 0;
398+
var ServerSideEncryption = params.ServerSideEncryption;
396399
var needUploadSlices = util.filter(UploadData.PartList, function (SliceItem) {
397400
if (SliceItem['Uploaded']) {
398401
FinishSize += SliceItem['PartNumber'] >= SliceCount ? (FileSize % SliceSize || SliceSize) : SliceSize;
@@ -416,6 +419,7 @@ function uploadSliceList(params, cb) {
416419
FileSize: FileSize,
417420
PartNumber: PartNumber,
418421
FilePath: FilePath,
422+
ServerSideEncryption: ServerSideEncryption,
419423
UploadData: UploadData,
420424
onProgress: function (data) {
421425
FinishSize += data.loaded - preAddSize;
@@ -456,6 +460,7 @@ function uploadSliceItem(params, callback) {
456460
var FilePath = params.FilePath;
457461
var PartNumber = params.PartNumber * 1;
458462
var SliceSize = params.SliceSize;
463+
var ServerSideEncryption = params.ServerSideEncryption;
459464
var UploadData = params.UploadData;
460465
var sliceRetryTimes = 3;
461466
var self = this;
@@ -485,6 +490,7 @@ function uploadSliceItem(params, callback) {
485490
ContentSha1: ContentSha1,
486491
PartNumber: PartNumber,
487492
UploadId: UploadData.UploadId,
493+
ServerSideEncryption: ServerSideEncryption,
488494
Body: Body,
489495
onProgress: params.onProgress
490496
}, function (err, data) {

sdk/base.js

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1046,7 +1046,7 @@ function getObject(params, callback) {
10461046
* @param {String} params.GrantRead 赋予被授权者读的权限,格式 x-cos-grant-read: uin=" ",uin=" ",非必须
10471047
* @param {String} params.GrantWrite 赋予被授权者写的权限,格式 x-cos-grant-write: uin=" ",uin=" ",非必须
10481048
* @param {String} params.GrantFullControl 赋予被授权者读写权限,格式 x-cos-grant-full-control: uin=" ",uin=" ",非必须
1049-
* @param {String} params.ServiceSideEncryption 支持按照指定的加密算法进行服务端数据加密,格式 x-cos-server-side-encryption: "AES256",非必须
1049+
* @param {String} params.ServerSideEncryption 支持按照指定的加密算法进行服务端数据加密,格式 x-cos-server-side-encryption: "AES256",非必须
10501050
* @param {Function} params.onProgress 上传进度回调函数
10511051
* @param {Function} callback 回调函数,必须
10521052
* @return {Object} err 请求失败的错误,如果请求成功,则为空。
@@ -1070,7 +1070,7 @@ function putObject(params, callback) {
10701070
headers['x-cos-grant-write'] = params['GrantWrite'];
10711071
headers['x-cos-grant-full-control'] = params['GrantFullControl'];
10721072
headers['x-cos-storage-class'] = params['StorageClass'];
1073-
headers['x-cos-server-side-encryption'] = params['ServiceSideEncryption'];
1073+
headers['x-cos-server-side-encryption'] = params['ServerSideEncryption'];
10741074

10751075
for (var key in params) {
10761076
if (key.indexOf('x-cos-meta-') > -1) {
@@ -1327,7 +1327,7 @@ function optionsObject(params, callback) {
13271327
* @param {String} ContentType RFC 2616 中定义的 HTTP 请求内容类型(MIME),例如text/plain
13281328
* @param {String} Expect 请求的特定的服务器行为
13291329
* @param {String} Expires 响应过期的日期和时间
1330-
* @param {String} params.ServiceSideEncryption 支持按照指定的加密算法进行服务端数据加密,格式 x-cos-server-side-encryption: "AES256",非必须
1330+
* @param {String} params.ServerSideEncryption 支持按照指定的加密算法进行服务端数据加密,格式 x-cos-server-side-encryption: "AES256",非必须
13311331
* @param {String} ContentLanguage 指定内容语言
13321332
* @param {String} x-cos-meta-* 允许用户自定义的头部信息,将作为 Object 元数据返回。大小限制2K。
13331333
*/
@@ -1352,7 +1352,7 @@ function putObjectCopy(params, callback) {
13521352
headers['Content-Type'] = params['ContentType'];
13531353
headers['Expect'] = params['Expect'];
13541354
headers['Expires'] = params['Expires'];
1355-
headers['x-cos-server-side-encryption'] = params['ServiceSideEncryption'];
1355+
headers['x-cos-server-side-encryption'] = params['ServerSideEncryption'];
13561356

13571357
for (var key in params) {
13581358
if (key.indexOf('x-cos-meta-') > -1) {
@@ -1480,7 +1480,7 @@ function deleteMultipleObject(params, callback) {
14801480
* @param {String} params.GrantWrite 赋予被授权者写的权限 ,非必须
14811481
* @param {String} params.GrantFullControl 赋予被授权者读写权限 ,非必须
14821482
* @param {String} params.StorageClass 设置Object的存储级别,枚举值:Standard,Standard_IA,Nearline,非必须
1483-
* @param {String} params.ServiceSideEncryption 支持按照指定的加密算法进行服务端数据加密,格式 x-cos-server-side-encryption: "AES256",非必须
1483+
* @param {String} params.ServerSideEncryption 支持按照指定的加密算法进行服务端数据加密,格式 x-cos-server-side-encryption: "AES256",非必须
14841484
* @param {Function} callback 回调函数,必须
14851485
* @return {Object} err 请求失败的错误,如果请求成功,则为空。
14861486
* @return {Object} data 返回的数据
@@ -1499,7 +1499,7 @@ function multipartInit(params, callback) {
14991499
headers['x-cos-grant-write'] = params['GrantWrite'];
15001500
headers['x-cos-grant-full-control'] = params['GrantFullControl'];
15011501
headers['x-cos-storage-class'] = params['StorageClass'];
1502-
headers['x-cos-server-side-encryption'] = params['ServiceSideEncryption'];
1502+
headers['x-cos-server-side-encryption'] = params['ServerSideEncryption'];
15031503
for (var key in params) {
15041504
if (key.indexOf('x-cos-meta-') > -1) {
15051505
headers[key] = params[key];
@@ -1530,23 +1530,25 @@ function multipartInit(params, callback) {
15301530

15311531
/**
15321532
* 分块上传
1533-
* @param {Object} params 参数对象,必须
1534-
* @param {String} params.Bucket Bucket名称,必须
1535-
* @param {String} params.Region 地域名称,必须
1536-
* @param {String} params.Key object名称,必须
1537-
* @param {String} params.ContentLength RFC 2616 中定义的 HTTP 请求内容长度(字节),非必须
1538-
* @param {String} params.Expect 当使用 Expect: 100-continue 时,在收到服务端确认后,才会发送请求内容,非必须
1539-
* @param {String} params.ContentSha1 RFC 3174 中定义的 160-bit 内容 SHA-1 算法校验值,非必须
1540-
* @param {Function} callback 回调函数,必须
1541-
* @return {Object} err 请求失败的错误,如果请求成功,则为空。
1542-
* @return {Object} data 返回的数据
1543-
* @return {Object} data.ETag 返回的文件分块 sha1 值
1533+
* @param {Object} params 参数对象,必须
1534+
* @param {String} params.Bucket Bucket名称,必须
1535+
* @param {String} params.Region 地域名称,必须
1536+
* @param {String} params.Key object名称,必须
1537+
* @param {String} params.ContentLength RFC 2616 中定义的 HTTP 请求内容长度(字节),非必须
1538+
* @param {String} params.Expect 当使用 Expect: 100-continue 时,在收到服务端确认后,才会发送请求内容,非必须
1539+
* @param {String} params.ServerSideEncryption 支持按照指定的加密算法进行服务端数据加密,格式 x-cos-server-side-encryption: "AES256",非必须
1540+
* @param {String} params.ContentSha1 RFC 3174 中定义的 160-bit 内容 SHA-1 算法校验值,非必须
1541+
* @param {Function} callback 回调函数,必须
1542+
* @return {Object} err 请求失败的错误,如果请求成功,则为空。
1543+
* @return {Object} data 返回的数据
1544+
* @return {Object} data.ETag 返回的文件分块 sha1 值
15441545
*/
15451546
function multipartUpload(params, callback) {
15461547
var headers = {};
15471548

15481549
headers['Content-Length'] = params['ContentLength'];
15491550
headers['Expect'] = params['Expect'];
1551+
headers['x-cos-server-side-encryption'] = params['ServerSideEncryption'];
15501552

15511553
var PartNumber = params['PartNumber'];
15521554
var UploadId = params['UploadId'];

0 commit comments

Comments
 (0)