将文件从谷歌驱动器发送到谷歌应用程序脚本的收存箱
问题描述:
我一直在寻找如何做到这一点,但我没有找到任何东西。过了一段时间,我想出了我将发布的脚本作为答案。 我发布了这个为自己和任何人可能会发现它有用。将文件从谷歌驱动器发送到谷歌应用程序脚本的收存箱
您需要获取Dropbox访问令牌,可以在创建Dropbox应用程序后获取该令牌。
答
function send2dropbox(file) {
var dropboxTOKEN = 'XXXxxx';
var path = '/somePath/' + file.getName();
var dropboxurl = 'https://api.dropboxapi.com/2/files/save_url';
var fileurl = 'https://drive.google.com/uc?export=download&id=' + file.getId();
var headers = {
'Authorization': 'Bearer ' + dropboxTOKEN,
'Content-Type': 'application/json'
};
var payload = {
"path": path,
"url": fileurl
}
var options = {
method: 'POST',
headers: headers,
payload: JSON.stringify(payload)
};
var response = UrlFetchApp.fetch(dropboxurl, options);
return response;
}
你可以找到一个例子HERE
注意这个代码使用的Dropbox API 1,而这是已废弃,并很快退役(https://blogs.dropbox.com/developers/2016/06/API-V1-弃用/)。您应该使用[Dropbox API v2](https://www.dropbox.com/developers)。这种情况下的相关端点是[/2/save_url](https://www.dropbox.com/developers/documentation/http/documentation#files-save_url)。 – Greg