【发布时间】:2018-10-17 22:35:05
【问题描述】:
这是我处理和处理特定日期的一段代码:
def o365_calendar_parse_url(self):
if validate_params(self.parameters):
data_url = self.o365_base_url + self.SUPPORTED_O365_INTENTS_URL['O365_CALENDAR_PARAMS']
start_date = ''
end_date = ''
if self.parameters["date"]:
split_date = self.parameters["date"].split("T")[0]
start_date = split_date
start_date = date_utilities.parse(start_date)
print(start_date)
end_date = start_date + datetime.timedelta(days=1)
final_url = data_url.format(start_date, end_date)
return final_url
else:
#other stuff
所以收到的日期是:2018-10-18T12:00:00-06:00,我的想法是从这个日期中删除时间(因为它不明确),因为我无法访问 API,因此我必须按照它的方式处理它发送。之后,想法是将该日期解析为 ISO 8601 格式,以便对图形 API 的请求以所要求的正确日期时间格式 (ISO 8601) 完成。
生成的日期时间为2018-10-18 00:00:00。发出请求后,生成的 URL 为:
https://graph.microsoft.com/v1.0/me/calendarView?startDateTime=2018-10-18%2000:00:00&endDateTime=2018-10-19%2000:00:00&$select=subject,bodyPreview,start,end,location,organizer,webLink
这会在 18 日和 19 日之间带来 1 场活动。似乎没问题,除了 18th 00:00:00 和 19th 00:00:00 之间实际上有 2 个事件。
其中一项活动在 18 日中午 12 点举行,另一项活动在晚上 8 点 30 分举行。谁能告诉我为什么日期范围不起作用?我试图找出原因,但我什么也没有发生。
【问题讨论】:
标签: python microsoft-graph-api outlook-restapi