在Graph API中使用扩展时:
graphUser = graphClient.Users.Request().AddAsync(graphUser).Result;
OpenTypeExtension newExtension = new OpenTypeExtension()
{
ExtensionName = "CustomName",
AdditionalData = new Dictionary<string, object>
{ { "CustomID", user.CustomID }
}
};
graphClient.Users[graphUser.UserPrincipalName]
.Extensions
.Request()
.AddAsync(newExtension)
.Wait();
Run Code Online (Sandbox Code Playgroud)
我随机得到这些错误:
Code: AccessDenied
Message: Access Denied
Run Code Online (Sandbox Code Playgroud)
有时候它有效,有时则不然.我似乎找不到相关性.当我逐步调试调试器中的代码时,如果我不间断地运行它,它会更频繁地工作.但是,如果我在行之间添加睡眠(以解决处理延迟),则无法解决问题.
该应用程序具有访问API所需的所有权限.
问题不仅仅在于POST,而且还在GET下面的代码示例中所示,导致相同的错误.
User user = graphClient.Users[userName]
.Request()
.GetAsync()
.Result;
user.Extensions = graphClient.Users[userName]
.Extensions
.Request()
.GetAsync()
.Result;
Run Code Online (Sandbox Code Playgroud)
有没有人有这个问题的经验?提前致谢!
编辑:
我发现一旦错误开始显示,就需要删除用户.一个用户的错误并不一定意味着另一个用户的错误.
编辑2:
我也在GitHub上发布了这个问题.在这里您可以找到有关此问题的更多信息.它现在被标记为一个错误.