c# - 更改 Sharepoint Webhook 的 Microsoft Graph 资源
问题描述
我目前正在使用 C# .Net Core 编写 Microsoft Graph 教程,在此过程中,我遇到了以下 C# 订阅方法:
[HttpGet]
public async Task<ActionResult<string>> Get()
{
var graphServiceClient = GetGraphClient();
var sub = new Microsoft.Graph.Subscription();
sub.ChangeType = "updated";
sub.NotificationUrl = config.Ngrok + "/api/notifications";
sub.Resource = "/users";
sub.ExpirationDateTime = DateTime.UtcNow.AddMinutes(15);
sub.ClientState = "SecretClientState";
var newSubscription = await graphServiceClient
.Subscriptions
.Request()
.AddAsync(sub);
Subscriptions[newSubscription.Id] = newSubscription;
if (subscriptionTimer == null)
{
subscriptionTimer = new Timer(CheckSubscriptions, null, 5000, 15000);
}
return $"Subscribed. Id: {newSubscription.Id}, Expiration: {newSubscription.ExpirationDateTime}";
}
并想知道如何为共享点列表而不是用户更改它。
如果我将其更改为 /sites/{site-id} 或类似名称,它将不起作用。(见子资源)
Github 链接:MS 回购
解决方案
Microsoft Graph API 使用 webhook 机制向客户端传递更改通知。使用 Microsoft Graph API,应用程序可以订阅 SharePoint 网站下列表的更改。
资源路径 - 更改列表中的内容:/sites/{id}/lists/{id}
有关如何订阅和处理传入通知的详细信息,请参阅为用户数据更改设置通知
还要确保在此处检查所需的必要权限。
推荐阅读
- volusion - 在 Element Block (Volusion) 中获取产品信息
- c# - 如何在 Azure 中为多个机器人创建单个机器人框架 V4 C# 项目
- linux - 无法锁定文件linux
- python - RuntimeError:张量 a (1024) 的大小必须与非单维 3 的张量 b (512) 的大小相匹配
- azure - 我可以通过 Azure 门户重置我的云域的帐户密码吗?
- c# - Application.StartupPath 指向 C:program files x86/Microsoft Visual Studio/2019/Community/Common 7/IDE 文件夹
- directory - Edge browser Native File System removeEntry 使用
- r - Shiny - 将用户选择的观察添加/附加到观察列表以进行分析
- c++ - BFS 实现 C++
- swift - 如何从 Cognito 获取 Apple 刷新令牌?