2015-01-14 55 views
0

试图了解Basecampjson api。Basecamp json api post todo

获取请求对我来说工作正常,但我似乎无法得到发布的请求工作。 使用Google脚本。 任何人都可以看到这个bug吗?我一直得到403,即使我是该帐户的所有者和项目

function createBaseCampTodo(user, pw, email, appName, accountNumber, 
          projectNumber,todolistNumber) { 

    var url = "https://basecamp.com/"+accountNumber+"/api/v1/projects/" 
      +projectNumber+"/todolists/"+todolistNumber+"/todos.json"; 

    var headers = { 
       "User-Agent": appName + " ("+email+")", 
       "contentType": "application/json", 
       "Authorization": "Basic " + 
            Utilities.base64Encode(user + ":" + pw) 
       }; 

    var data = { 
    "content": "This is my new thing!", 
    "due_at": "2015-03-27" 
    };    

    var params = { 
    "method":"post", 
    "headers":headers, 
    "validateHttpsCertificates" :false, 
    //"muteHttpExceptions" : true, 
    "payload" : JSON.stringify(data) 
    }; 

    var response = UrlFetchApp.fetch(url, params); 
    var text = response.getContentText(); 
    Logger.log(text); 
} 

回答

0

我的好友发现了这个错误。它应该说Content-Type而不是contentType。 指向他敏锐的头脑和眼睛。