드라이브에서 보관 용 계정으로 파일을 보내고 싶지만 몇 가지 문제가 있습니다.Google Apps 스크립트를 보관 용 계정에 연결
다음 URL을 참조하십시오 다음 스크립트를 다시 실행 : 나는 메시지가 인증 URL로 입력 할 수 https://www.dropbox.com/1/oauth/authorize?oauth_token=xxxxxxx
내가 할을, 응용 프로그램이 드롭 박스에 추가 (또는 적어도 내가 메시지를 받게 그 말),하지만 스크립트를 다시 실행하면 같은 메시지가 다시 나타납니다. Dropbox에 연결된 앱 목록을 확인한 경우이 앱이 표시되지 않습니다. 다음을 시도했습니다. 최대한 가깝게 ... 내가 잘못하고있는 것은 무엇입니까?
function Gmail2Dropbox() {
var service = getDropboxService();
if (service.hasAccess()){
var folderName = "foldername";
var folder = DriveApp.getFoldersByName(folderName).next();
var files = folder.getFiles();
while (files.hasNext()){
var file = files.next();
var fileName = file.getName();
Logger.log(fileName);
var options = {
"oAuthServiceName" : "dropbox",
"oAuthUseToken" : "always",
"method" : "put",
"payload" : file.getBlob().getBytes(),
"contentType" : file.getMimeType()
};
var response = UrlFetchApp.fetch("https://api-content.dropbox.com/1/files_put/sandbox/" + folderName + "/" + fileName, options);
Logger.log(response);
}
}
else {
var authorizationUrl = service.authorize();
Logger.log('Please visit the following URL and then re-run the script: ' + authorizationUrl);
}
}
function getDropboxService() {
var dropboxKey = "dropKey";
var dropboxSecret = "dropSecret";
var service = OAuth1.createService('dropbox');
service.setRequestTokenUrl("https://api.dropbox.com/1/oauth/request_token");
service.setAuthorizationUrl("https://www.dropbox.com/1/oauth/authorize");
service.setAccessTokenUrl("https://api.dropbox.com/1/oauth/access_token");
service.setConsumerKey(dropboxKey);
service.setConsumerSecret(dropboxSecret);
service.setCallbackFunction('authCallback');
service.setPropertyStore(PropertiesService.getScriptProperties());
return service;
}
function authCallback(request) {
var service = getDropboxService;
var isAuthorized = service.handleCallback(request);
if (isAuthorized) {
return HtmlService.createHtmlOutput('Success! You can close this page.');
} else {
return HtmlService.createHtmlOutput('Denied. You can close this page');
}
}
답장을 보내 주셔서 감사합니다. 하지만 내가하는 모든 일에서 적어도 가능한 제 3 자 서비스를 사용하려고 노력하고 있습니다. 그리고 저는 마음에 다른 용도가 있기 때문에 Google 앱 스크립트에서이를 직접 수행하는 방법을 알고 싶습니다. 감사합니다, –
그래, 그것은 해결책보다 해결 방법입니다. 행운을 빕니다. – Mullenb
이 방법을 사용하는 경우 : 파일을 공유해야하며 다운로드가 가능하며 "값 1"에 다운로드 URL을 사용하고 보내려는 각 파일 사이에 약 1000ms를 기다려야합니다. –