2017-06-16 13 views
0

Ich lerne über Dropbox API v2.Dropbox API v2/Löschen in Google Apps Script

Als ich versuchte, den Löschbefehl einzugeben, wurde die Datei erfolgreich gelöscht. https://www.dropbox.com/developers/documentation/http/documentation#files-delete

curl -X POST https://api.dropboxapi.com/2/files/delete \ 
    --header "Authorization: Bearer <DROPBOX_ACCESS_TOKEN>" \ 
    --header "Content-Type: application/json" \ 
    --data "{"path":"/test/memo.txt\"}" 

Wenn ich gleiche Aktion in Google Apps Script,

function main() { 
    var dropBoxAccessToken = "<DROPBOX_ACCESS_TOKEN>" 

    var dropBoxDeleteRes = JSON.parse(deleteDropBoxFiles(dropBoxAccessToken).getContentText()) 
    Logger.log(dropBoxDeleteRes) 
} 

function deleteDropBoxFiles(apiKey) { 
    return UrlFetchApp.fetch(
    "https://api.dropboxapi.com/2/files/delete", 
    { 
     "method" : "post", 
     "contentType" : "application/json", 
     "payload" : {"path" : "/test/memo.txt"}, 
     "headers" : {"Authorization" : "Bearer " + apiKey}, 
     "muteHttpExceptions" : true // for debug 
    } 
); 
} 

Der Fehler "Syntaxerror: Unexpected token: E" zu tun versucht wurde, zurückgegeben.
Es wäre toll, wenn mir jemand helfen könnte.

+0

Es könnte 'JSON.parse', die den Fehler ist zu werfen. Sehen Sie, was 'getContentText' zurückgibt, bevor Sie es analysieren. Ich vermute, dass es eine Fehlermeldung ist, die zum Debuggen nützlich sein könnte. –

Antwort

0

Sie müssen JSON.stringify() Ihre Nutzlast Objekt wie folgt:

function deleteDropBoxFiles(apiKey) { 
    return UrlFetchApp.fetch(
    "https://api.dropboxapi.com/2/files/delete", 
    { 
     "method" : "post", 
     "contentType" : "application/json", 
     "payload" : JSON.stringify({"path" : "/test/memo.txt"}), 
     "headers" : {"Authorization" : "Bearer " + apiKey}, 
     "muteHttpExceptions" : true // for debug 
    } 
); 
} 
Verwandte Themen