rest - 如何使用 REST 按标题获取 Sharepoint 用户?
问题描述
我正在尝试使用“姓氏,名字”在 Sharepoint 网站上搜索给定用户。我能够使用以下 url 将站点用户的总列表作为大型 XML 文档获取:
https://thissite.com/sites/thatsite/_api/web/siteusers/
但是,我无法弄清楚如何按标题搜索。当我使用以下网址时:
https://thissite.com/sites/thatsite/_api/web/siteusers/getbytitle(“lastname,%20firstname”)
我收到此错误:
<m:error xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
<m:code>
-1, Microsoft.SharePoint.Client.InvalidClientQueryException
</m:code>
<m:message xml:lang="en-US">
The expression "web/siteusers/getbytitle("lastname, firstname")" is not valid.
</m:message>
</m:error>
当我使用以下 url 获取相同用户的数据时:
https://thissite.com/sites/thatsite/_api/web/siteusers/getbyid(41)
然后我成功地获得了与该用户数据一起返回的 XML。
我想我可以解析从中获得的列表/siteusers
并将其加载到可搜索的数据对象中,但我希望得到更直接的东西。
解决方案
UserCollection
资源不公开getbytitle
方法,这就是你得到这个异常的原因。
为了按标题过滤用户,您可以使用$filter
查询选项,如下所示:
https://contoso.sharepoint.com/_api/web/siteusers?$filter=Title eq '<Title>'
推荐阅读
- python - 从带有参数的双击快捷方式运行 Python 文件
- ios - 带有 where(in:) 和 where(isEqual:) 的 Firestore 查询
- python - 无法调用/访问内部类方法 Python
- node.js - 未设置 Cookie,即使它位于响应标头中。使用快速会话 cookie
- excel - Excel Power Query 添加日期列失败
- c# - C# Unity Container Constructor Injection 瞬态生命周期管理器提供相同的实例
- c# - 如何在最后一个元素之前使用分隔符定义 WPF ContextMenu,使用 ItemsSource 上的绑定而不是单个 MenuItems
- angular - Ionic Angular HTTP isTrusted:true 问题
- sharepoint - SharePoint 2013:项目删除向用户发送邮件 - 不想要
- django - 如何使用wordpress + django搭建网站