猿问

如何使用 Microsoft Graph Client for JavaScript

根据 Microsoft Graph Client for JavaScript文档,客户端支持$expand查询参数并且工作正常。

由于 Microsoft Graph API 支持在使用 ( $expand=attachments($select=name,size))时在扩展字段内进行选择,我该如何使用 JavaScript SDK/客户端执行此操作?

我已经尝试过这样的事情,但它为扩展管理器返回了过多的属性(我试图避免这种情况):

client
  .api('/users')
  .expand('manager($select=displayName)')
  .get();


繁星coding
浏览 181回答 1
1回答

炎炎设计

您的语法是正确的,但恐怕 API 本身不支持这一点。虽然 AAD 资源支持$expand,但存在一些严重的限制:它仅在 Beta 版本中受支持。至于为什么它仅限于 Beta,可以肯定的是,这是由于下一点。您不能在同一个查询中同时使用$expand和$select。换句话说,不仅会/me?$expand=manager($select=displayName)失败,/me?$select=id,displayName&$expand=manager($select=displayName)or也会失败/me?$select=id,displayName&$expand=manager。鉴于数据的价值,这最终会返回并仅限于 Beta 版本,$expand当涉及到 DirectoryObject 时,它实际上被降级为少数极端情况。我的建议是避免扩展管理器,而是将页面大小设置为 20,并为每页数据构建一个批处理请求以拉动管理器。这允许您显着减少线路上的数据量,将出站调用的数量保持在每页两个,并且可以在 v1.0 版本中完全完成。有关如何构造批处理请求的更多信息,请参阅SDK 文档中的批处理。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答