我正在尝试使用javascript将文件移动到Google云端硬盘中,但操作不成功。
代码使用2个请求
删除以前的父母并添加新的父母。
newParentId = "1iZV23z7...88YE";
fileId = "13rXB34O...xqgD";
// get current parents
gapi.client.request({
'path': 'https://www.googleapis.com/drive/v3/files/'+fileId,
'params' : { 'fields' : "parents" },
'method': 'GET'
})
.then( function( resp ){ changeParents(resp.result.parents); } )
.catch( console.log )
function changeParents( previousParents ){
gapi.client.drive.files.update({
'fileId': fileId,
'addParents': newParentId,
'removeParents': previousParents
});
}
第一个请求就可以了。删除和添加父母无效。
谢谢。
答案 0 :(得分:0)
您从第一个请求中获取的“父母”字段是一个字符串数组,但是第二个请求中的“ removeParents”参数应该是一个字符串,其中包含一个逗号分隔的要删除的父母ID列表。
您只需要将toString()添加到previousParents:
function changeParents( previousParents ){
gapi.client.drive.files.update({
'fileId': fileId,
'addParents': newParentId,
'removeParents': previousParents.toString()
});
}