首页 文章

Office 365 OneDrive REST API - “invalid_client”

提问于
浏览
4

我正在尝试调用新的Office 365文件REST API . (正如here)所述) .

我正在使用Postman rest客户端发送请求 .

我已在Azure AD中注册了我的应用程序,并赋予其对“Office 365 SharePoint Online”的完全权限 .

我可以使用Azure AD中生成的clientId成功获取授权令牌 .

但是,当我尝试列出文件时,使用访问令牌我收到错误 .

------------------
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"

什么可能导致这个问题?

2 回答

  • 1

    不确定您尝试使用哪些步骤来解决此问题,因此很难在这里帮助您 . 我刚刚完成了关于注册应用程序以调用OneDrive for Business的步骤的更详细说明 . 它现在很长很复杂,但我们正努力在未来做得更好 .

    你可以在这里查看如何进行身份验证的详细信息:https://dev.onedrive.com/auth/aad_oauth.htm

    确保您没有要求太多权限,因为这将要求您的应用程序由管理员而不是最终用户进行身份验证 . 对于大多数应用,您只需使用“我的文件”权限范围,您的应用用户可以直接接受这些范围 .

    如果您在AAD中发布有关您正在拨打的电话,响应和应用配置的更多信息,我可能会提供更多帮助 .

  • 1

    您可能一直在使用不同的资源 .

    检查用于获取访问令牌的资源是否与请求获取文件的资源相同 .

    例如:

    如果您在请求访问令牌时提到的资源是::“ https://tenant-my.sharepoint.com/

    然后你需要在相同的资源上发出访问文件的请求::“ https://tenant-my.sharepoint.com/ _api / v2.0 / drive / root / children”

    上面的请求给出了根子项列表 .

    • tenant - >已注册到贵组织的域名 .

    请按照此文档进一步访问api

相关问题