【问题标题】:Microsoft graph delta query documentation clarificationMicrosoft graph delta 查询文档说明
【发布时间】:2020-07-06 06:40:00
【问题描述】:

我正在浏览 Microsoft Graph https://docs.microsoft.com/en-us/graph/delta-query-events?tabs=java 的文档,发现“下一轮:示例第一个请求”部分不包括作为请求的一部分的增量查询,在这种情况下,当前状态意味着所有事件都应返回.

另外,我发现同一个请求没有开始或结束日期。我知道这个调用是使用上次调用中收到的 deltaToken 进行的。那么,在我使用 deltaToken 获取下一组更改的情况下进行调用时是否应该传递 start 和 end Date?

以下是文档中使用的代码(既不包括 deltaToken,也不包括开始和结束日期):

IGraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();

LinkedList<Option> requestOptions = new LinkedList<Option>();
requestOptions.add(new HeaderOption("Prefer", "odata.maxpagesize=2"));

IEventDeltaCollectionPage delta = graphClient.me().calendarView()
    .delta()
    .buildRequest( requestOptions )
    .get();

请帮忙。提前致谢。

【问题讨论】:

    标签: microsoft-graph-api exchangewebservices microsoft-graph-sdks microsoft-graph-teams microsoft-graph-calendar


    【解决方案1】:

    初始 Delta 查询中提供的任何查询参数都将编码在 Delta 或跳过令牌中,这就是您不需要每次都传递它的原因。 (开始和结束日期)

    此文档页面似乎存在问题,它从未显示使用 Delta 链接并将其作为 Delta 令牌查询参数传回(类似于使用 skiptoken 所做的)。明天我会 PR 文档来解决这个问题。

    【讨论】:

    • 因此,如果我有来自上一次通话的 delta 令牌,我不需要传递该通话的开始和结束日期吗?我知道在 skipToken 中编码的开始日期和结束日期,但不确定它们是否在 deltaToken 中编码?请您再确认一下好吗?抱歉重复了。
    • 是的,您在初始 delta 查询中提供的每个必需参数(无 delta 或跳过令牌)都将在后续的 delta/skip 令牌中进行编码,您无需再次提供这些参数。
    • 感谢@baywet 的澄清。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-16
    • 2021-11-20
    • 1970-01-01
    相关资源
    最近更新 更多