ErrorItemNotFound ошибка для ресурса сообщения, но обнаруживается при применении фильтра OData
У некоторых из наших пользователей возникает проблема, из-за которой наши HTTP-запросы к API Graph приводят к ErrorItemNotFound
ошибка:
{
"error": {
"code": "ErrorItemNotFound",
"message": "The specified object was not found in the store., The process failed to get the correct properties.",
"innerError": {
"request-id": "c65a51b6-163c-4b68-9cf5-976b3738af0c",
"date": "2019-05-20T20:35:52"
}
}
}
Мы пытаемся получить ресурс сообщений через конечную точку сообщений.
Мы предпринимали попытки запросить конкретное сообщение для пользователя с /me/messages/{id}
конечная точка. Простой запрос сообщения с использованием идентификатора сообщения возвращает эту ошибку.
Однако последующий запрос к конечной точке списка сообщений приводит к получению сообщения. Этот запрос предоставляет OData $filter
параметр. Идентификатор сообщения не изменился, и сообщение не было перемещено.
https://graph.microsoft.com/v1.0/me/messages
?$filter=(createdDateTime ge 2019-05-03T17:56:58Z)
and (createdDateTime le 2019-05-03T17:57:13Z)
Примечание: сообщение все еще можно найти без указания фильтра. Я не думаю, что вы рекомендуете делать запросы на большее количество данных, чем нам нужно, и иметь фильтр клиента (конечного пользователя / потребителя). Правильно?
Невероятно странно, что API не может найти сообщение, используя запрос "членство"/get item по его уникальному идентификатору, но может при использовании запроса "collection"/list items. Это похоже на ошибку. Я видел похожую проблему, на которую ваша команда не ответила в хранилище документации на GitHub.
Это может быть скопировано в вашем Graph Explorer или любом другом HTTP-клиенте (curl, Postman). Это похоже на ошибку.