Skip to content

Commit 985783f

Browse files
authored
Merge pull request #106 from livehigh/feat/putObject_base64&&uploadId
feat
2 parents d674abf + 50493fc commit 985783f

File tree

3 files changed

+44
-3
lines changed

3 files changed

+44
-3
lines changed

demo/demo.js

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -822,6 +822,40 @@ function putObject() {
822822
});
823823
}
824824

825+
function putObject_base64ToBuffer() {
826+
// 创建测试文件
827+
var filename = 'test.png';
828+
var filepath = path.resolve(__dirname, filename);
829+
var base64Url = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAABRFBMVEUAAAAAo/8Ao/8Ao/8Ao/8ApP8Aov8Ao/8Abv8Abv8AyNwAyNwAo/8Ao/8Ao/8Abv8Ao/8AivgAo/8AyNwAbv8Abv8AydwApf8Abf8Ao/8AbP8Ao/8AyNwAydwAbv8AydwApP8Ao/8AyNwAo/8AyNwAydsAyNwAxd8Aov8AyNwAytsAo/8Abv8AyNwAbv8Av+MAo/8AytsAo/8Abv8AyNwAo/8Abv8AqfkAbv8Aov8Abv8AyNwAov8Abv8Ao/8Abv8Ao/8AydwAo/8Ao/8Ate8Ay9oAvOcAof8AveAAyNwAyNwAo/8AyNwAy9kAo/8AyNwAyNwAo/8AqP8Aaf8AyNwAbv0Abv8Abv8AaP8Ao/8Ao/8Ao/8Ao/8Abv8AyNwAgvcAaP8A0dkAo/8AyNwAav8Abv8Ao/8Abv8AyNwAy9sAvOUAtePdkYxjAAAAZnRSTlMAw/co8uAuJAn8+/Tt29R8DAX77+nZz87Jv6CTh3lxTklAPjouJRsL5tjAuLiyr62roaCakYp0XVtOQTMyLiohICAcGRP49vTv5+PJurawq6mnnJuYl4+OiIB7eXVvX15QSDgqHxNcw3l6AAABe0lEQVQ4y82P11oCQQxGIy5FUJpKk6aAhV6k92LvvXedDfj+92ZkYQHxnnMxu3/OfJMEJo6y++baXf5XVw22GVGcsRmq431mQZRYyIzRGgdXi+HwIv86NDBKisrRAtU1hSj9pkZ9jpo/9YKbRsmNNKCHDXI00BxfMMirKNpMcjQ5Lm4/YZArUXyBYUwg40nsdr5jb3LBe25VWpNeKa1GENsEnq52C80z1uW48estiKjb19G54QdCrScnKAU69U3KJ4jzrsBawDWPuOcBqMyRvlcb1Y+zjMUBVsivAKe4gXgEKiVjSh9wlunGMmwiOqFL3RI0cj+nkgp3jC1BELVFkGiZSuvkp3tZZWZ2sKCuDj185PXqfmwI7AAOUctHkJoOeXg3sxA4ES+l7CVvrYHMEmNp8GtR+wycPG0+1RrwWQUzl4CvgQmPP5Ddofl8tWkJVT7J+BIAaxEktrYZoRAUfXgOGYHfcOqw3WF/EdLccz5cMfvUCPb4QwUmhB8+v12HZPCkbgAAAABJRU5ErkJggg==';
830+
var body = Buffer.from(base64Url.split(',')[1] , 'base64');
831+
util.createFile(filepath, 1024 * 1024, function (err) {
832+
// 调用方法
833+
cos.putObject({
834+
Bucket: config.Bucket, /* 必须 */
835+
Region: config.Region,
836+
Key: filename, /* 必须 */
837+
onTaskReady: function (tid) {
838+
TaskId = tid;
839+
},
840+
onProgress: function (progressData) {
841+
console.log(JSON.stringify(progressData));
842+
},
843+
// 格式1. 传入文件内容
844+
// Body: fs.readFileSync(filepath),
845+
// 格式2. 传入文件流,必须需要传文件大小
846+
Body: body,
847+
ContentLength: body.length,
848+
Headers: {
849+
// 万象持久化接口,上传时持久化
850+
// 'Pic-Operations': '{"is_pic_info": 1, "rules": [{"fileid": "test.jpg", "rule": "imageMogr2/thumbnail/!50p"}]}'
851+
},
852+
}, function (err, data) {
853+
console.log(err || data);
854+
fs.unlinkSync(filepath);
855+
});
856+
});
857+
}
858+
825859
function putObjectCopy() {
826860
cos.putObjectCopy({
827861
Bucket: config.Bucket,
@@ -1653,6 +1687,7 @@ function CIExample4(){
16531687
// pauseTask();
16541688
// restartTask();
16551689
// putObject();
1690+
// putObject_base64();
16561691
// sliceCopyFile();
16571692
// putObjectTagging();
16581693
// getObjectTagging();

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "cos-nodejs-sdk-v5",
3-
"version": "2.9.17",
3+
"version": "2.9.18",
44
"description": "cos nodejs sdk v5",
55
"main": "index.js",
66
"types": "index.d.ts",

sdk/advance.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,18 @@ function sliceUploadFile(params, callback) {
2525
// 上传过程中出现错误,返回错误
2626
ep.on('error', function (err) {
2727
if (!self._isRunningTask(TaskId)) return;
28-
return callback(err);
28+
var _err = util.extend({
29+
UploadId: params.UploadData.UploadId || ''
30+
}, err);
31+
return callback(_err);
2932
});
3033

3134
// 上传分块完成,开始 uploadSliceComplete 操作
3235
ep.on('upload_complete', function (UploadCompleteData) {
33-
callback(null, UploadCompleteData);
36+
var _UploadCompleteData = util.extend({
37+
UploadId: params.UploadData.UploadId || ''
38+
}, UploadCompleteData);
39+
callback(null, _UploadCompleteData);
3440
});
3541

3642
// 上传分块完成,开始 uploadSliceComplete 操作

0 commit comments

Comments
 (0)