我正试图为用户创建一个帐户,并将其提供给OneDrive。应用程序拥有所有所需的权限,并且用户拥有包含OneDrive for Business的许可证。
当使用MicrosoftGraph中的/v1.0/users/username/drive端点提供OneDrive时,如文档中在“获取用户的OneDrive”下所述,会出现以下错误:
{
"error": {
"code": "ResourceNotFound",
"message": "User's mysite not found.",
"innerError": {
"request-id": "996c75c0-19d5-416e-8070-e9af593ae1d7",
"date": "2017-11-08T08:23:22"
}
}
}即使过了一段时间,OneDrive也没有准备好,即使我检查了一下也没有。但是,当我通过为用户登录到OneDrive来手动提供它时,它确实提供了。
所以我的问题是:为什么用户的OneDrive没有得到配置?
刚刚找到了一个相关的https://stackoverflow.com/questions/47081881/cannot-access-onedrive-details-for-another-user。
发布于 2017-11-08 16:24:09
正如文档中提到的
如果没有提供用户的OneDrive,但用户拥有使用OneDrive的许可证,则当使用委托身份验证时,此请求将自动提供用户的驱动器。
这里的关键部分是“委托身份验证”。这说明只有当上下文中有Drive时,API才会提供user。换句话说,您的应用程序必须使用authorization_code或implicit OAUTH授权来触发自动配置。
如果使用的是“应用程序身份验证”(即client_credentials授权),则不会触发自动配置。
https://stackoverflow.com/questions/47174957
复制相似问题