Azure functions 使用「;GraphServiceClient“;向SharePoint online发送REST调用的步骤
在具有Core 2.2和Microsoft.Graph 1.18.0的Azure函数构建中,我能够使用“GraphServiceClient”来执行以下操作: -创建同时创建团队站点的365组。 -将网站列和内容类型复制到其中 -创建新文档库 但是我不能将内容类型分配给库。 “GraphServiceClient”使用应用程序id和客户端密码进行身份验证。 所以我想使用RESTSharp Core发送REST帖子,将内容类型分配给库。但是我找不到一种方法来使用相同的应用程序id和客户端密码进行身份验证。 我假设“GraphServiceClient”在某个地方有一个令牌,我可以在rest调用中使用它,但我可以找出它在哪里Azure functions 使用「;GraphServiceClient“;向SharePoint online发送REST调用的步骤,azure-functions,microsoft-graph-sdks,Azure Functions,Microsoft Graph Sdks,在具有Core 2.2和Microsoft.Graph 1.18.0的Azure函数构建中,我能够使用“GraphServiceClient”来执行以下操作: -创建同时创建团队站点的365组。 -将网站列和内容类型复制到其中 -创建新文档库 但是我不能将内容类型分配给库。 “GraphServiceClient”使用应用程序id和客户端密码进行身份验证。 所以我想使用RESTSharp Core发送REST帖子,将内容类型分配给库。但是我找不到一种方法来使用相同的应用程序id和客户端密码进行身
string GraphClientId = GetEnvironmentVariable("GraphClientId");
string GraphTenantId = GetEnvironmentVariable("GraphTenantId");
string GraphClientSecret = GetEnvironmentVariable("GraphClientSecret");
IConfidentialClientApplication confidentialClientApplication = ConfidentialClientApplicationBuilder
.Create(GraphClientId)
.WithTenantId(GraphTenantId)
.WithClientSecret(GraphClientSecret)
.Build();
ClientCredentialProvider authProvider = new ClientCredentialProvider(confidentialClientApplication);
graphClient = new GraphServiceClient(authProvider);
令牌位于graphClient中的某个位置。{Where?}
因为有些事情你不能用Graph来做,
是否有一种方法可以使用已通过身份验证的“GraphServiceClient”向同一租户的SharePoint online发送REST调用?您希望RESTSharp能够完成的Graph SDK有哪些功能是您无法完成的?SDK是基于Graph API元数据构建的,因此SDK无法处理的场景很少。在大多数情况下,如果SDK不能做到这一点,那是因为Graph API本身不支持它。请参阅@Paul answer我正在尝试将内容类型分配给新库。SDK使用的令牌绑定到Microsoft Graph,因此对您没有任何好处。您需要为SharePoint生成单独的令牌才能使用SharePoint API。谢谢,我放弃了,回到了丑陋的CSOM on net 461:-)