我目前正在订阅日历活动:var request = graphClient.Subscriptions.Request();var result = await request.AddAsync( new Subscription { ChangeType = "created,updated,deleted", NotificationUrl = notificationUrl, Resource = "/users/" + userId + "/" + resource, ExpirationDateTime = DateTimeOffset.UtcNow.AddMinutes(4230), ClientState = "my-subscription-identifier" });可以声明 a ClientState,因此当收到通知时,我可以通过将ClientState与创建订阅请求中发送的状态进行比较来处理它?在我发送订阅请求后,服务器向我发送了一条验证消息。我缺少的是ClientState来自 Microsoft Graph 的验证请求。在更改通知下的文档中,请求的描述如下:POST https://{notificationUrl}?validationToken={TokenDefinedByMicrosoftGraph}ClientState: {Data sent in ClientState value in subscription request (if any)}不幸的是,我无法在验证请求(或任何其他部分)的正文中找到客户端状态。客户状态声明是否正确?如果是,为什么ClientState不在文档中描述的验证请求中(因为出于安全原因它看起来很重要)?
1 回答
慕尼黑5688855
TA贡献1848条经验 获得超2个赞
初始验证的目标是让 Microsoft 验证客户端的通知 URL:它已启动和响应,并且它可以接受通知。
验证旨在无副作用且不披露任何信息。
到目前为止,我们还没有遇到包含 clientState 有用的场景,这就是我们没有将它包含在验证请求中的原因。
如果您有一个案例,在此请求中包含更多信息会很有用(例如,作为更大场景/工作流程的一部分),您能否简要描述一下?
注意:我们将很快更新文档以与 API 行为保持一致。
- 1 回答
- 0 关注
- 101 浏览
添加回答
举报
0/150
提交
取消