使用Graph API无法使用过滤器参数获取特定日期的事件

时间:2018-07-19 09:52:44

标签: javascript microsoft-graph

https://graph.microsoft.com/v1.0/me/events?$filter=2018-07-15T01:00:00&$select=subject,start,end,createdDateTime&$orderby=createdDateTime%20DESC

这是我的程序发出的请求:

400 (Bad Request)

[P6]aabbcc<em>ddeeff</em>gghhiijj<em>kkllmmnn</em>oopp[P2]qqrr<em>ssttuuww</em>xxyyzz

1 个答案:

答案 0 :(得分:1)

您正尝试使用/events对象(startDateTimeendDateTime)中不存在的属性来过滤event端点。您还将在filter子句中传递=而不是eq

/calendarView端点确实具有startDateTimeendDateTime参数,但这些参数本身就是查询参数(不属于filter子句的一部分)。我怀疑这是您实际上正在寻找的操作:

client
  .api("/me/calendarview")
  .query({
    startdatetime: "2018-03-01T00:00:00.0000000",
    enddatetime: "2018-03-31T23:00:00.0000000"
  })
  .select("subject,start,end,createdDateTime")
  .orderby("createdDateTime DESC")
  .get((err, res) => {
    if (err) {
      callback(null, err);
    } else {
      callback(res.value);
    }
  });