2014-09-02 4 views
3

Я пытаюсь позвонить в новый API REST API 365 файлов. (Как объяснено here).Office 365 OneDrive REST API - «invalid_client»

Я использую клиент Postman для отправки запроса.

Я зарегистрировал свое приложение в Azure AD и дал ему полные разрешения на «Office 365 SharePoint Online».

Я могу успешно получить токен авторизации, используя clientId, сгенерированный в Azure AD.

Однако, когда я пытаюсь перечислить файлы, используя токен доступа, я получаю сообщение об ошибке.

------------------ 
RESOURCE HTTP GET: 
------------------ 
URL: https://<OUR_DOMAIN>-my.sharepoint.com/personal/<user_domain>/_api/Files 
HEADER: Authorization: Bearer <access token> 

Response: 

3001000;reason="There has been an error authenticating the request.";category="invalid_client" 

Что может вызвать этот вопрос?

+0

У меня эта же проблема. Вы когда-нибудь разрешали эту проблему? –

+0

Извините, я этого не сделал. Дайте мне знать, если найдете решение. – Thushara

ответ

1

Не знаете, какие шаги вы пытались использовать для решения этой проблемы, поэтому вам сложно помочь вам здесь. Я только что закончил писать более подробные инструкции о том, как зарегистрировать приложение для вызова OneDrive для бизнеса. Сейчас это сложно и сложно, но мы работаем над тем, чтобы улучшить ситуацию в будущем.

Вы можете проверить информацию о том, как сделать авторизацию здесь: https://dev.onedrive.com/auth/aad_oauth.htm

Убедитесь, что вы не просите слишком много разрешений, так как для этого потребуется приложение, чтобы пройти проверку подлинности администратором, а не в конце пользователь. Для большинства приложений вы можете просто использовать области разрешений «Мои файлы», которые могут быть приняты пользователем вашего приложения напрямую.

Если вы публикуете дополнительную информацию о том, какие звонки вы делаете, ответы и настройки приложения в AAD, я могу помочь больше.

+0

Спасибо за детали. Мне удалось заставить его работать сейчас. Я не совсем понимаю, как добавить области в манифест приложения в Azure AD. – Thushara

1

Возможно, вы использовали разные ресурсы.

Проверьте, является ли ресурс, который вы использовали для получения токена доступа, так же, как вы запрашиваете для получения файлов.

, например:

Если ресурс, который вы упомянули при запросе маркера доступа быть :: "https: // арендатор -my.sharepoint.com/"

Затем вам нужно сделать запрос на тот же ресурс для доступа к файлам :: "https: // арендатор -my.sharepoint.com/ _api/v2.0/drive/root/children"

В приведенном выше запросе укажите список корневых детей.

  • арендатор -> доменное имя, которое было зарегистрировано в вашей организации.

Следуйте this documentation для дальнейшего доступа к API

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