有没有办法让我发现用户有一个OneDrive站点(用于Office365帐户)?
我正在通过我的sharepoint网站获取用户列表
https://-my.sharepoint.com/_api/web/siteusers
但是没有字段可以指示用户是否有活动的OneDrive . 通过OneDrive我的意思是这种个人网站;
https://-my.sharepoint.com/personal/user_name_domain_microsoft_com
找到的一种方法是访问该用户的URL并检查它是否产生404响应 .
我试图通过REST API完成它?对此有何帮助?
2 回答
以下用户属性可用于区分实际(或活动)SPO用户:
Principal.PrincipalType property -
PrincipalType.User
value指定 user 为主要类型UserIdInfo.NameIdIssuer property - 与名称标识符颁发者类型的配置无关的引用,对于SPO用户,其值为:
urn:federation:microsoftonline
REST请求:
您现在无法使用O365 Files REST API执行此操作,但您可以使用Powershell cmdlet(例如,此页面http://blog.blksthl.com/2014/08/07/office-365-guide-series-provision-onedrive-for-business-using-powershell/向您展示如何使用Powershell为用户列表配置OneDrive for Business,从那里只需稍作修改打印出这些人是否配置了OneDrive)
但您提到的另一种解决方法是使用O365 Files REST API并调用此 endpoints :
https://your_SP_URL.com/_api/v1.0/me/drive
如果您收到错误消息,则表示尚未配置 Cloud 端硬盘 . 这是一个丑陋的解决方案,但它应该适合您的目的 .