Microsoft Graph Api:按GUID值过滤

时间:2017-06-26 22:56:59

标签: odata microsoft-graph

我正在尝试使用Microsoft Graph Api来获取特定用户的详细信息。

我有一个问题,可以使用Graph Explorer来演示:https://developer.microsoft.com/en-us/graph/graph-explorer

如果我运行此查询:

https://graph.microsoft.com/v1.0/users

我获得了一个用户列表,包括他们的ID。

我知道我可以通过将id附加到网址来获取一个用户的详细信息。例如,此查询:

https://graph.microsoft.com/v1.0/users/f71f1f74-bf1f-4e6b-b266-c777ea76e2c7

导致一个特定用户的详细信息。

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users/$entity",
    "id": "f71f1f74-bf1f-4e6b-b266-c777ea76e2c7",
    "businessPhones": [],
    "displayName": "CIE Administrator",
    "givenName": "CIE",
    "jobTitle": null,
    "mail": "admin@CIE493742.onmicrosoft.com",
    "mobilePhone": "+1 3528700812",
    "officeLocation": null,
    "preferredLanguage": "en-US",
    "surname": "Administrator",
    "userPrincipalName": "admin@CIE493742.onmicrosoft.com"
}

但是,就我而言,在$filter字段上应用id查询会更容易。

这是我尝试过的,以及我得到的错误:

尝试一个

.../users?$filter=id eq f71f1f74-bf1f-4e6b-b266-c777ea76e2c7

返回以下消息:

  

检测到具有不兼容类型的二元运算符。找到操作数类型' Edm.String'和#Edm.Guid'对于运营商类型' Equal'。

尝试两次

..../users/$filter=id eq guid'f71f1f74-bf1f-4e6b-b266-c777ea76e2c7'

返回以下消息:

  

无法识别' Edm.String'文字' fidf1f1f74-bf1f-4e6b-b266-c777ea76e2c7'' at' 6' in' id eq guid&f; f71f1f74-bf1f-4e6b-b266-c777ea76e2c7''。

1 个答案:

答案 0 :(得分:1)

终于明白了。

只需将guid用单引号括起来,不需要其他注释。

https://graph.microsoft.com/v1.0/users?$filter=id eq 'f71f1f74-bf1f-4e6b-b266-c777ea76e2c7'