使用asana api我只想获得在过去5分钟内完成的任务列表。为此在PHP代码下面做了。我正在获取甚至没有关闭的任务列表。
//unix time before 5 minutes
$lastHour = time() - 5 * 60;
//convert to tz format
$last_run = date("Y-m-d\TH:i:s.000\Z", $lastHour);
$args = array('completed_since' => $last_run);
$tasks = $asana->getProjectTasks($project->id, $args);
echo "<pre>"; print_r($tasks );
$tasksJson = json_decode($tasks);
查询中有什么问题吗?
答案 0 :(得分:0)
来自文档:
仅返回自给定时间以来不完整或已完成的任务。
所以completed_since
总是返回所有未完成的任务。最初,这是为了模拟应用程序中的行为:您通常在一个视图中看到“最近完成的和所有不完整的”任务。应用程序不再执行此操作,但API仍遵循此约定,因为我们无法更改它并破坏现有客户端。 (此外,这用于使用?completed_since=now
)获取所有未完成的任务。
如果仅想要完成的任务,您可以提出当前正在使用的请求,然后过滤掉PHP中completed
为真的那些请求。这不是理想的,但我希望能够解决问题!
(顺便说一下,我们正在为API制作一个新的,更直观的和表达式过滤系统,但它仍处于设计阶段的早期阶段,并且不会发货。所以,我不会屏住呼吸,但我们知道这种情况需要解决; - ))