问题描述
我无法获得Microsoft图形OneDrive Share API来处理从个人Microsoft帐户共享的OneNote文档。共享由个人Microsoft帐户生成的OneNote文档时,将生成https://1drv.ms/u/s!{text}
格式的URL。但是我无法使用Microsoft Graph API。以下代码抛出此错误:
Unhandled exception. Status Code: BadRequest
Microsoft.Graph.ServiceException: Code: invalidRequest
Message: The site in the encoded share URI is invalid.
C#控制台应用程序代码:
IPublicClientApplication publicClientApplication = PublicClientApplicationBuilder
.Create(clientId)
.WithRedirectUri("http://localhost")
.Build();
InteractiveAuthenticationProvider authProvider =
new InteractiveAuthenticationProvider(publicClientApplication,new[] {
"https://graph.microsoft.com/Sites.ReadWrite.All","https://graph.microsoft.com/Files.ReadWrite","https://graph.microsoft.com/Files.ReadWrite.All"
});
var graphClient = new GraphServiceClient(authProvider);
var sharingUrl = "https://1drv.ms/u/s!...";
string base64Value = System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(sharingUrl));
string encodedUrl = "u!" + base64Value.TrimEnd('=').Replace('/','_').Replace('+','-');
var shares = await graphClient.Shares[encodedUrl].Permission.Request().GetAsync();
据我从docs得知这应该可行,任何帮助都值得赞赏。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)