#microsoft-graph-api #onedrive
#microsoft-graph-api #onedrive
Вопрос:
Я пытаюсь извлечь недавно использованные элементы для пользователя, использующего эту конечную точку. Хотя выборка самих элементов работает, я не могу выполнить фильтрацию по lastModifiedDateTime, которая является свойством ответа API, согласно этой ссылке.
Я делаю запрос GET на следующую конечную точку:
https://graph.microsoft.com/v1.0/me/drive/recent?$filter=lastModifiedDateTime ge 2020-08-25T05:30:00Z
И я получаю Microsoft.SharePoint.Client.InvalidClientQueryException
следующее сообщение:
'The expression "lastModifiedDateTime ge 2020-08-25T05:30:00Z" is not valid.'
Пожалуйста, помогите!
Комментарии:
1. Эта ошибка в основном связана с отсутствием одинарных кавычек (‘) между временными метками. И после этого вы получаете ошибку «Недопустимое предложение фильтра». Было бы лучше отфильтровать его с вашей стороны и использовать данные, поскольку большинство свойств не поддерживают фильтрацию.
2. Спасибо @Shiva-MSFTIdentity. В итоге я сделал то, что вы предложили. Не идеально, но работает.
3. Спасибо за ответ @Utkarsh. Перемещаем это в ответ.
4. Привет, если опубликованный ответ разрешает ваш вопрос, пожалуйста, отметьте его как ответ, установив флажок. Это помогает другим пользователям находить ответы на свои вопросы. Смотрите meta.stackexchange.com/questions/5234 /…
Ответ №1:
Отображаемая ошибка гласит: «Выражение «lastModifiedDateTime ge 2020-08-25T05:30:00Z» недопустимо», что означает, что выражение, которое вы указали в фильтре, неверно. Вам нужно исправить это, как показано ниже.
https://graph.microsoft.com/v1.0/me/drive/recent?$filter=lastModifiedDateTime ge '2020-08-25T05:30:00Z'
Но все же этот вызов не работает, потому что фильтр не поддерживается в этом свойстве, и в итоге вы получите «Недопустимое предложение фильтра».
В качестве обходного пути вы можете получить последние файлы и отфильтровать их на своем конце, поскольку большинство свойств пока не поддерживают фильтрацию.