Google apps script 使用AppsScript删除Dropbox API中的批处理方法
我正在使用AppsScript操作GDrive和Dropbox之间的文件,我当前的任务是从Dropbox中指定的文件夹中删除一组文件 我创建的应用仅具有应用文件夹的权限类型 最初,我使用这种方法删除了一个文件 通过以下代码Google apps script 使用AppsScript删除Dropbox API中的批处理方法,google-apps-script,dropbox-api,delete-file,Google Apps Script,Dropbox Api,Delete File,我正在使用AppsScript操作GDrive和Dropbox之间的文件,我当前的任务是从Dropbox中指定的文件夹中删除一组文件 我创建的应用仅具有应用文件夹的权限类型 最初,我使用这种方法删除了一个文件 通过以下代码 function deleteFiles() { var dropBoxAccessToken = "token" var dropBoxDeleteRes = (deleteDropBoxFiles(dropBoxAccessToken).
function deleteFiles() {
var dropBoxAccessToken = "token"
var dropBoxDeleteRes = (deleteDropBoxFiles(dropBoxAccessToken).getContentText())
Logger.log(dropBoxDeleteRes)
}
function deleteDropBoxFiles(apiKey) {
return UrlFetchApp.fetch(
"https://api.dropboxapi.com/2/files/delete_v2",
{
"method" : "post",
"contentType" : "application/json",
"payload" : JSON.stringify({"path": "/20200110-dsc06071.jpg"}),
"headers" : {"Authorization" : "Bearer " + apiKey},
"muteHttpExceptions" : true
}
);
}
但是,我很难为几个文件实现相同的功能。
这些文件位于应用程序文件夹的根文件夹中,我从API文档中注意到,此方法不支持根文件夹操作(错误:调用API函数“files/delete\u batch”时出错:请求正文:entries.path:根文件夹不受支持。
)
参考此方法,我尝试将路径
字符串修改为类似{“路径”:“/\”\”}
,{“路径”:“/”}
或{“路径”:“/”}
的内容,以指示“所有文件”。通过API资源管理器进行测试会得到一个异步作业ID,但文件夹中的文件不会被删除。但是,从AppsScript中运行相同的命令会返回以下错误:
{“error\u summary”:“path\u lookup/not\u found/。”,“error”:{.tag”:“path\u lookup”,“path\u lookup”:{.tag”:“not\u found”}}}
,这显然是一个路径错误
感觉此方法无法从应用程序根文件夹中删除
如果你能帮我一点忙,我将不胜感激。
多谢各位 带有“app folder”的Dropbox API应用程序不能像这样删除其整个根目录,但我会将其作为功能请求传递。但我不能保证是否或何时实施 相反,如果要删除根文件夹的所有内容,则需要列出每个项目,并针对每个项目发出一个删除命令,方法是为每个项目调用/2/files/delete_v2一次,或者使用列出所有项目的批处理命令/2/files/delete_batch