ks3
Version:
本代码库为`金山云存储KS3`服务.主要提供`KS3 nodejs SDK`和`命令行工具`.
57 lines (53 loc) • 1.63 kB
JavaScript
var KS3 = require('..');
var path = require('path');
var fs = require('fs');
var config = require('../config');
const { ak, sk, bucketName, endpoint } = require('./const');
var key = 'a.mp4'; //test_upload_file.txt
var bigFile = path.join(__dirname, '../test/assets/' + key);
var filePath = bigFile;
var fileName = (function(){
var s = filePath.split('/');
return s[s.length-1];
})();
var key = `test_${fileName}`;
var client = new KS3({ak, sk, bucketName, endpoint});
// 上传
function uploadFile() {
client.upload.start({
Bucket: bucketName,
FilePath: filePath,
Key: key,
onProgress: function (progressData) {
console.log('progressData:', progressData)
},
FileSetting: {
isDeep: true,
ignore: 'pdf'
},
Headers: {
'x-kss-tagging': 'test=nodesdk',
'x-kss-forbid-overwrite': true
},
StorageClass: 'STANDARD_IA',
ACL: 'public-read'
},
function(err, data, res) {
if (err && err.headers) {
var region = err.headers['x-kss-bucket-region']
client = new KS3({ak, sk, bucketName, region});
// 307手动重新上传
client.upload.start({
Bucket: bucketName,
FilePath: filePath,
Key: key,
isOnprogress: true
}, function(err, data, res) {
console.log('request result data statusCode:', data)
})
}else{
console.log('request result data statusCode:', data)
}
});
}
uploadFile();