Фильтрация по lastModifiedDateTime перестала возвращать результаты - PullRequest
0 голосов
/ 15 февраля 2019

У меня проблема с фильтрацией событий календаря с использованием конечной точки MS Graph 1.0 calendarView.

У меня есть фрагмент кода, который использовался для получения событий календаря, измененных за последние 30 минут.Этот код запрашивал Graph, используя calendarView вместе с $filter (lastModifiedDateTime ge ...).

В какой-то момент он вообще перестал давать результаты.Нет ошибокНет предупреждений.Просто пустой набор результатов.

Изначально я отправлял метку времени в формате RFC3339, и она работала просто отлично.

  • изменение формата не помогло (но судя по тому, что фильтры используются для другой даты и времениполя отлично работают со многими различными форматами строк, это, вероятно, не проблема)
  • заключение строки в кавычки не помогло
  • Проводник API также показывает результат без совпадений
  • попытка получить событие, совпадающее с точной отметкой времени в идентичной форме, возвращаемой из API с фильтром lastModifiedDateTime eq ..., не возвращает совпадений
    // w/o filters there are visible results and there is clearly an event with a lastModifiedDateTime attribute set
    // https://graph.microsoft.com/v1.0/users/sample@totallyfakecompany.onmicrosoft.com/calendarview?startdatetime=2017-02-15T11:33:06.775Z&enddatetime=2019-02-22T11:33:06.775Z

    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('sample%40totallyfakecompany.onmicrosoft.com')/calendarView",
        "value": [
            {
                "@odata.etag": "W/\"rVquutuYEk6b2WKuRzYB9QAAcVQDkg==\"",
                "id": "AAMkAGViN2VkNDAxLWY2MzYtNGNiZi05NDEwLTdjNDRjNjA4YzYyNABGAAAAAADn5npXZZY1QrLh_blG0ZIaBwCtWq6625gSTpvZYq5HNgH1AAAAAAENAACtWq6625gSTpvZYq5HNgH1AABxVKXYAAA=",
                "createdDateTime": "2018-09-12T13:54:02.8197636Z",
                "lastModifiedDateTime": "2018-09-12T13:57:04.4596518Z" ...

    // querying for a lastModifiedDateTime greater or equal the events attribute using the exact format of timestamp as the API returns an empty set
    // https://graph.microsoft.com/v1.0/users/sample@totallyfakecompany.onmicrosoft.com/calendarview?startdatetime=2017-02-15T11:33:06.775Z&enddatetime=2019-02-22T11:33:06.775Z&$filter=lastModifiedDateTime ge 2018-09-11T13:57:04.4596518Z

    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('sample%40totallyfakecompany.onmicrosoft.com')/calendarView",
        "value": []
    }

    // querying for a lastModifiedDateTime equal the actual atrribute value also returns an empty set
    // https://graph.microsoft.com/v1.0/users/sample@totallyfakecompany.onmicrosoft.com/calendarview?startdatetime=2017-02-15T11:33:06.775Z&enddatetime=2019-02-22T11:33:06.775Z&$filter=lastModifiedDateTime eq 2018-09-12T13:57:04.4596518Z */

    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('sample%40totallyfakecompany.onmicrosoft.com')/calendarView",
        "value": []
    }

Кто-нибудь знает, что здесь происходит?Либо я что-то упустил, либо что-то могло измениться в MS-графе (странно, поскольку API версионен, а я все еще использую ту же версию = 1.0)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...