@@ -1262,6 +1262,50 @@ function sliceCopyFile() {
12621262 } ) ;
12631263}
12641264
1265+ /* 移动对象*/
1266+ function moveObject ( ) {
1267+ // COS 没有对象重命名或移动的接口,移动对象可以通过复制/删除对象实现
1268+ var source = 'source.txt' ;
1269+ var target = 'target.txt' ;
1270+ var copySource = config . Bucket + '.cos.' + config . Region + '.myqcloud.com/' + camSafeUrlEncode ( source ) . replace ( / % 2 F / g, '/' ) ;
1271+ cos . putObject ( {
1272+ Bucket : config . Bucket ,
1273+ Region : config . Region ,
1274+ Key : source ,
1275+ Body : 'hello!' ,
1276+ } , function ( err , data ) {
1277+ if ( err ) return logger . log ( err ) ;
1278+ cos . putObjectCopy ( {
1279+ Bucket : config . Bucket ,
1280+ Region : config . Region ,
1281+ Key : target ,
1282+ CopySource : copySource ,
1283+ } , function ( err , data ) {
1284+ if ( err ) return logger . log ( err ) ;
1285+ cos . deleteObject ( {
1286+ Bucket : config . Bucket ,
1287+ Region : config . Region ,
1288+ Key : source ,
1289+ } , function ( err , data ) {
1290+ logger . log ( err || data ) ;
1291+ } ) ;
1292+ } ) ;
1293+ } ) ;
1294+ }
1295+
1296+ /* 创建文件夹 */
1297+ function createFolder ( ) {
1298+ cos . getBucket ( {
1299+ Bucket : config . Bucket ,
1300+ Region : config . Region ,
1301+ Key : 'folder/' , // 对象存储没有实际的文件夹,可以创建一个路径以 / 结尾的空对象表示,能在部分场景中满足文件夹使用需要
1302+ Body : '' ,
1303+ } , function ( err , data ) {
1304+ logger . log ( err || data ) ;
1305+ } ) ;
1306+ }
1307+
1308+ /* 上传本地文件夹 */
12651309function uploadFolder ( ) {
12661310 // <input type='file' name="file" webkitdirectory >
12671311 var input = document . createElement ( 'input' ) ;
@@ -1299,6 +1343,7 @@ function uploadFolder() {
12991343 input . click ( ) ;
13001344}
13011345
1346+ /* 列出文件夹下的文件 */
13021347function listFolder ( ) {
13031348 var _listFolder = function ( params , callback ) {
13041349 var Contents = [ ] ;
@@ -1337,6 +1382,7 @@ function listFolder() {
13371382 } ) ;
13381383}
13391384
1385+ /* 删除指定文件夹下的所有对象(删除存储桶里指定前缀所有对象) */
13401386function deleteFolder ( ) {
13411387 var _deleteFolder = function ( params , callback ) {
13421388 var deletedList = [ ] ;
@@ -1592,6 +1638,8 @@ function CIExample4(){
15921638 'sliceCopyFile' ,
15931639 'uploadFiles' ,
15941640 'uploadFolder' ,
1641+ 'moveObject' ,
1642+ 'createFolder' ,
15951643 'listFolder' ,
15961644 'deleteFolder' ,
15971645 'cancelTask' ,
@@ -1611,6 +1659,7 @@ function CIExample4(){
16111659 uploadFiles : '批量上传文件' ,
16121660 selectFileToUpload : '上传本地文件' ,
16131661 uploadFolder : '上传文件夹' ,
1662+ request : '通用请求接口' ,
16141663 listFolder : '列出文件夹' ,
16151664 deleteFolder : '删除文件夹' ,
16161665 CIExample1 : '上传时使用图片处理' ,
0 commit comments