当使用扩展图形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();
我随机得到这些错误:
Code: AccessDenied
Message: Access Denied
有时工作,有时没有。我似乎无法找到相关性。 当我在调试器中搜索代码时,它会更频繁地运行,然后运行它而不会中断。但是如果我在行之间添加睡眠(以解决处理延迟),它不能解决问题。
该应用程序具有访问API的所有必需权限。
该问题不仅在POST
中,而且还在GET
上,如下面的代码示例中所示,这会导致相同的错误。
User user = graphClient.Users[userName]
.Request()
.GetAsync()
.Result;
user.Extensions = graphClient.Users[userName]
.Extensions
.Request()
.GetAsync()
.Result;
有没有人有这方面的经验?提前致谢!
编辑:
我想通了,一旦错误开机有显示,用户需要将其删除。一个用户的错误不一定意味着另一个用户的错误。
编辑2:
我也贴,这个是GitHub的问题。在这里你可以找到关于这个问题的更多信息。它现在被标记为一个错误。
它不应该改变行为,因为.Result等待操作完成。这可能更有效,但由于项目的性质,我不能很好地实施这个解决方案。 –