微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Google Task API PHP:设置任务列表 ID 和“无效的任务列表 ID”错误

如何解决Google Task API PHP:设置任务列表 ID 和“无效的任务列表 ID”错误

我正在尝试遍历任务列表,以便使用 Google Task PHP library 生成任务列表。

我有

  • 完成所有凭据操作并可以调用 API
  • 我可以获得任务列表
  • 使用从上述点生成的 id 和 Task API explorer 中的 tasklist 参数正确输出相应任务列表的任务列表

我被困的地方:

我的代码

function getGcalTasks(){
  $client = $this->getGcalTaskClient();
  try {
    $service = new Google_Service_Tasks($client);
    $optParamLists = array(
      'maxResults' => 10,);
    $result_lists = $service->tasklists->listTasklists($optParamLists);
    if (
      is_array($result_lists->getItems())
      && count($result_lists->getItems())
    ) {
      foreach ($result_lists->getItems() as $tasklist) {
        $taskListId = trim($tasklist->getId());
        $taskListTitle = trim($tasklist->getTitle());
        if(
          $taskListId
        ){
          $optParamsTasks = array(
            // I've tried all of the below and still get: "Invalid task list ID",'id'         => $taskListId,'kind'       => 'tasks#taskList','title'      => $taskListTitle,//'tasklist'   => $taskListId,//'taskList'   => $taskListId,//'tasklistId' => $taskListId,//'listName'   => $taskListTitle,);
          $result_tasks = $service->tasks->listTasks($optParamsTasks);
        }
      }
    }
  } catch (Exception $e) {
    log_message('error',$e->getMessage());
  }
}

解决方法

好吧,几分钟后我看了看,发现 listTasks() 只接受一个参数,即 id。下面的代码对我有用:

function getGcalTasks(){
  $client = $this->getGcalTaskClient();
  $tasks = array();
  try {
    $service = new Google_Service_Tasks($client);
    $optParamLists = array(
      'maxResults' => 10,);
    $result_lists = $service->tasklists->listTasklists($optParamLists);
    if (
      is_array($result_lists->getItems())
      && count($result_lists->getItems())
    ) {
      foreach ($result_lists->getItems() as $tasklist) {
        $taskListId = trim($tasklist->getId());
        $taskListTitle = trim($tasklist->getTitle());
        if(
          $taskListId
        ){
          $optParamsTasks = array(
            'tasklist'   => $taskListId,);
          $result_tasks = $service->tasks->listTasks($taskListId);
          $tasks[]        = $result_tasks->getItems();
        }
      }
      return $tasks;
    }
  } catch (Exception $e) {
    log_message('error',$e->getMessage());
  }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。