2016-07-08 7 views
1

Я использую образец приложения Django от Microsoft и пытаюсь читать события календаря с этого момента назад до 1 года назад. Запрос API осуществляется с помощью функции запроса Python:Как вставить дату и время запуска и завершения вызова API календаря Outlook

response = requests.get(url, headers = headers, params = parameters) 

Заголовок является стандартный запрос API, связанные с:

headers = { 'User-Agent' : 'python_events/1.0', 
      'Authorization' : 'Bearer {0}'.format(token), 
      'Accept' : 'application/json', 
      'X-AnchorMailbox' : user_email } 

И для параметров я передаю:

query_parameters = {'$top': '2500', 
         '$select': 'Id,Subject,Start,End', 
         '$orderby': 'Start/DateTime ASC'} 

Теперь я пытался определить начальные и конечные даты как:

now = datetime.utcnow() 
    one_year = now - timedelta(days=365) 
    now = now.isoformat() 
    one_year = one_year.isoformat() 

Затем попытался вставить параметры startDateTime и endDateTime в том же query_parameters Dict:

query_parameters = {'$top': '2500', 
         '$select': 'Id,Subject,Start,End', 
         '$orderby': 'Start/DateTime ASC', 
         'startDateTime' : one_year, 
         'endDateTime': now 
        } 

я все еще получаю событие сбрасывают от до того, как год назад. Что я здесь делаю неправильно? Является ли query_parameters правильным местом для ввода даты и времени начала и окончания?

+0

Какова ценность 'url'? –

+0

Привет Джейсон, значение URL: https://outlook.office.com/api/v2.0/Me/Events –

ответ

0

Для того, чтобы использовать startDateTime и endDateTime параметры, чтобы ограничить диапазон дат, вы должны сделать GET на /calendarview конечной точке, а не /events. Конечная точка /events не поддерживает эти параметры.

Измените свой url на https://outlook.office.com/api/v2.0/Me/calendarview и посмотрите, получите ли вы лучшие результаты.

+0

Вот и все! Спасибо Джейсону, оцените вашу помощь. –

 Смежные вопросы

  • Нет связанных вопросов^_^