2011-06-19 55 views
2

我試圖更新用下面的代碼任務:

谷歌的任務更新錯誤

function updtsk(task,id) 
{ 
    var url = 'https://www.googleapis.com/tasks/v1/lists/@default/tasks/'+id; 
    var req = { 
    'method': 'PUT', 
    'headers': { 
     'Content-type': 'application/json' 
    }, 
    'body': JSON.stringify(task) 
    }; 
    var addDone = function(resp, xhr) { 
    if (xhr.status != 200) { 
     notifyFailure('Couldn\'t update task.', xhr.status); 
     return; 
    } 

    //notifySuccess(task['title']); 
    } 

    oauth.sendSignedRequest(url, addDone, req); 
} 

我得到不過以下錯誤:

"{ 
"error": { 
    "errors": [ 
    { 
    "domain": "global", 
    "reason": "invalid", 
    "message": "Invalid Value" 
    } 
    ], 
    "code": 400, 
    "message": "Invalid Value" 
} 
} 
" 

更新的身體是這樣的:

{ 
'title': $(this).val() 
}; 

我正在使用chrome_ex_oauth api並可以使用一些幫助。

+0

你能發佈一個正在發送的更新正文的例子,導致這個錯誤被返回嗎? – bronsoja

+0

你走了。你能幫我嗎? – jbills

回答

0

在谷歌工作的API更新任何任務列表任務:
首先我們要得到的任務利用任務列表Id和任務標識的任務
第二步改變/更新,並再次更新任務。
希望這對你有所幫助。

+0

你碰巧有這個代碼?它不適合我.. –

10

嘗試將'id'鍵/值對與您正在發送的標題信息一起傳遞。

我有這個相同的問題,即使使用API​​瀏覽器。沒有文檔表明這是必需參數,尤其是因爲它包含在URL中。一旦我添加了ID,它就可以正常工作。

+0

+1有這個問題,謝謝! –

+0

http body是否必須包含json序列化的任務資源? –

+1

因此Google要求將任務的id作爲url,參數和body的一部分傳遞(任務資源) – parth