我需要获取两个日期之间的日历事件。我只知道时间间隔,用户的电子邮件地址和日历ID。我不知道日历中可能有多少事件。
我在API文档中找到了CalendarView。根据文档,我将请求撰写为:
/v1.0/users/{email}/calendars/{calendarID}/calendarView?startDateTime=2017-10-09T00:00:00.0000000&endDateTime=2017-10-14T10:00:00.0000000
我总是得到只有10个事件的回复。但我绝对相信这一刻有超过50项(理论上可能更多)。
当我将top
参数添加到查询字符串时,我会收到第一个top
个事件:
/v1.0/users/{email}/calendars/{calendarID}/calendarView?startDateTime=2017-10-09T00:00:00.0000000&endDateTime=2017-10-14T10:00:00.0000000&top=100
正如您所看到的,使用top
参数并不能解决我的问题,因为我不知道有多少事件,也无法“硬编码”这个数字。
请问有人帮帮我吗?
答案 0 :(得分:2)
Paging是你的朋友。请参阅https://developer.microsoft.com/en-us/graph/docs/concepts/paging。
答案 1 :(得分:0)
可能是旧文章,但以防万一有人从Google到达这里
api的响应似乎仅限于10个项目。如果有更多项可用,响应中包括一个@ odata.nextLink,可以调用它来检索更多项(使用skip参数)。因此,您必须遍历响应,直到没有nextLink为止,以获取所有事件。