我使用GraphAPI通过电子邮件获取用户已有几个月时间。特定用户发生了什么事。现在,我无法使用以下方法来获取此用户:
signInNames/any(x:x/value eq '{email}'
除我之前说过的以外,此功能适用于所有用户。
在尝试通过电子邮件检索时出现此错误:
{
"odata.metadata": "https://graph.windows.net/jsmaddev.onmicrosoft.com/$metadata#directoryObjects",
"value":[]
}
如果我尝试通过ObjectId获取,则可以访问用户的信息,但signInNames似乎为空:
"signInNames":[]
是否有可能导致这种情况?您应该记住,这种特定的访问按预期进行。
谢谢!
答案 0 :(得分:1)
这是正常现象。过滤器signInNames/any(x:x/value eq '{email}'
返回signInNames.value
等于电子邮件的用户。
signInNames
部分示例:
"signInNames": [
{
"type": "userName",
"value": "AlexW"
},
{
"type": "emailAddress",
"value": "AlexW@example.com"
}
]
如果我尝试通过ObjectId获取,我可以访问用户的信息,但signInNames似乎为空
由于signInNames
属性为空,"signInNames":[]
将返回"value":[]
。
您应该记住,此特定访问已按预期进行。
当然,如果signInNames
不为空,它将正常工作。