谷歌任务更新错误

Google tasks update error

本文关键字:错误 更新 任务 谷歌      更新时间:2023-09-26

我正试图用以下代码更新任务:

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_auth api,可能需要一些帮助。

尝试将'id'键/值对与已发送的标题信息一起传递。

即使使用API资源管理器,我也遇到了同样的问题。没有文档表明这是一个必需的参数,尤其是因为它包含在URL中。一旦我添加了id,它就正常工作了。

您可能需要在更新中包含其他字段。

此处的文档:http://code.google.com/apis/tasks/v1/reference.html#resource_tasks显示,表示status属性不是可选的(其他可变字段在其描述中列为可选)。您可能还需要包含种类属性,其中指示静态值。

在Google任务API中更新任何任务列表任务:
首先,我们必须使用任务列表Id和任务Id来获取任务
第二步更改/更新任务,然后再次更新该任务
希望这对你有帮助。

我读了好几遍这些答案,但只看到了我认为我已经知道的内容,这是错误的。插入/更新等文件。状态

POST https://www.googleapis.com/tasks/v1/lists/tasklist/tasks

需要在POST请求头中传递的是任务列表的id(例如类似"MTA1MjEpoqwdNTMzMjAzo349YDA6MDow"的内容),而不是任务列表标题,例如"我的任务列表",例如

POST https://www.googleapis.com/tasks/v1/lists/MTA1MjEpoqwdNTMzMjAzo349YDA6MDow/tasks

您可以通过执行tasklists"list"查询来查找列表的id。

GET https://www.googleapis.com/tasks/v1/users/@me/lists

返回,例如类似这样的东西:

{
   "kind": "tasks#taskList",
   "id": "MTA1MjEpoqwdNTMzMjAzo349YDA6MDow",
   "title": "My Task List",
   "updated": "2019-03-15T21:21:03.000Z",
   "selfLink": "https://www.googleapis.com/tasks/v1/users/@me/lists/MTA1MjE0Njc5NTMzMjA1NDk0NDA6MDM1NDgwMjIxODgyMjcyODow"
  }

您可以在响应中看到任务列表id,然后可以在POST中使用该id来修改所需的任务列表。这个问题的答案已经发布,但没有一个有明确例子的。希望这个例子能帮助人们克服这种新手的问题。