Я пытаюсь получить все сообщения с 15.06.2017T18:24:13Z.
(Я использую страницы с 5 результатами и выбираю SentDateTime только для упрощения этого случая. Эта проблема также возникает при выборе большего количества полей и большего размера страницы)
Запрос общего количества сообщений:
>>> https://outlook.office.com/api/v2.0/me/messages/$count?$filter=SentDateTime+ge+2017-06-15T18:24:13Z&select=SentDateTime&$top=5
3988
Теперь получаем сообщения:
>>> https://outlook.office.com/api/v2.0/me/messages/?$filter=SentDateTime+ge+2017-06-15T18:24:13Z&select=SentDateTime&$top=5
{
"@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages(SentDateTime)",
"value": [
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAAAHSJlCAAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABMlWeb\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAAAHSJlCAAA=",
"SentDateTime": "2017-06-15T18:27:24Z"
},
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCpAADjWpP0ATh5SI1bqWxqzWOKAABMdlVnAAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSF+rD\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCpAADjWpP0ATh5SI1bqWxqzWOKAABMdlVnAAA=",
"SentDateTime": "2017-06-15T18:37:29Z"
},
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAAAHSJiQAAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSGAe8\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAAAHSJiQAAA=",
"SentDateTime": "2017-06-15T19:12:22Z"
},
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCpAADjWpP0ATh5SI1bqWxqzWOKAABMdlVpAAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSF+rE\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCpAADjWpP0ATh5SI1bqWxqzWOKAABMdlVpAAA=",
"SentDateTime": "2017-06-15T19:15:58Z"
},
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl74AAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSGAe9\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl74AAA=",
"SentDateTime": "2017-06-15T19:20:05Z"
}
],
"@odata.nextLink": "https://outlook.office.com/api/v2.0/me/messages/?%24filter=sentdatetime+ge+2017-06-15T18%3a24%3a13Z&%24select=SentDateTime&%24top=5&%24skip=5"
}
Запрос следующей страницы:
>>> https://outlook.office.com/api/v2.0/me/messages/?$filter=sentdatetime+ge+2017-06-15T18:24:13Z&$select=SentDateTime&$top=5&$skip=5
{
"@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages(SentDateTime)",
"value": [
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl73AAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSGAe+\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl73AAA=",
"SentDateTime": "2017-06-15T19:24:13Z"
},
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl70AAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSGAe/\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl70AAA=",
"SentDateTime": "2017-06-15T20:19:27Z"
},
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCpAADjWpP0ATh5SI1bqWxqzWOKAABMdlVtAAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSF+rF\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCpAADjWpP0ATh5SI1bqWxqzWOKAABMdlVtAAA=",
"SentDateTime": "2017-06-15T20:20:12Z"
}
]
}
Второй ответ не содержит nextLink, что означает, что есть только 8 результатов, а последнее сообщение было отправлено в 2017-06-15T20:20:12Z.
Однако при запросе на следующий день:
>>> https://outlook.office.com/api/v2.0/me/messages/?$filter=SentDateTime+ge+2017-06-16T00:00:00Z&select=SentDateTime&$top=5
{
"@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages(SentDateTime)",
"value": [
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl8dAAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSGAfR\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl8dAAA=",
"SentDateTime": "2017-06-16T00:52:10Z"
},
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl8cAAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSGAfS\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl8cAAA=",
"SentDateTime": "2017-06-16T01:37:09Z"
},
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl8ZAAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSGAfT\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl8ZAAA=",
"SentDateTime": "2017-06-16T02:59:38Z"
},
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl8VAAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSGAfU\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl8VAAA=",
"SentDateTime": "2017-06-16T03:03:25Z"
},
{
"@odata.id": "https://outlook.office.com/api/v2.0/Users('d2fe4aac-1eae-4d14-9893-4f96f42ae46b@487bfe01-8734-4c88-9424-11fa0c5d445e')/Messages('AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl8UAAA=')",
"@odata.etag": "W/\"CQAAABYAAADjWpP0ATh5SI1bqWxqzWOKAABSGAfV\"",
"Id": "AAMkADU3ZDE1ZGJiLTg4ZmUtNGVlYy1hYzE4LWMyNjE1NzY4YWUzYQBGAAAAAABGFgzFsCOpRISdXXbGh88oBwA0lgq1qqsaRYyJVwoDR59-AAAvWYCsAADjWpP0ATh5SI1bqWxqzWOKAABMdl8UAAA=",
"SentDateTime": "2017-06-16T03:20:12Z"
}
],
"@odata.nextLink": "https://outlook.office.com/api/v2.0/me/messages/?%24filter=SentDateTime+ge+2017-06-16T00%3a00%3a00Z&%24select=SentDateTime&%24top=5&%24skip=5"
}
Это означает, что сообщений действительно больше, чем 8, возвращенных исходным запросом.
Я попытался изменить запрос, начав с другого значения SentDateTime, но он продолжает останавливаться на этом последнем сообщении. Та же проблема возникает с разными почтовыми ящиками в разные даты.
Любая подсказка о том, как подойти к этому?
EDIT В качестве временного исправления я просматриваю все папки (используя /me/mailFolders) и извлекаю их по одной, используя один и тот же фильтр. Кажется, это работает вместо правильного решения
@odata.nextLink
или сами вычисляете$skip
? - person Jason Johnston   schedule 25.07.2017