У меня есть приложение, которое извлекает данные профиля с помощью API Microsoft Graph. Приложение должно иметь возможность извлекать профили как для учетной записи Work / School Azure, так и для пользовательских учетных записей Azure. Проблема, с которой я столкнулся, заключается в том, что при получении данных, которые отображаются в учетных записях Work / School, но не в учетных записях потребителей, я получаю ошибку 404. Другими словами, мое приложение должно обрабатывать учетные записи рабочих / учебных заведений и учетные записи потребителей одинаково, извлекая только те данные, которые Microsoft Graph отображает для учетной записи потребителя, без возврата ошибки, когда данные не раскрываются.
При вызове этой конечной точки https://graph.microsoft.com/v1.0/me/
с токеном авторизации для учетной записи потребителя я получаю следующий ответ:
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users(etc)/$entity",
"displayName": "<fullname>",
"surname": "<lastname>",
"givenName": "<firstname>",
"id": "value",
"userPrincipalName": "value@hotmail.com",
"businessPhones": [],
"jobTitle": null,
"mail": null,
"mobilePhone": null,
"officeLocation": null,
"preferredLanguage": null
}
Позвонив по номеру https://graph.microsoft.com/v1.0/me/?$select=birthday
с учетной записью Work / School, я получаю данные, с которыми могу работать. Между тем, вызов https://graph.microsoft.com/v1.0/me/?$select=birthday
с тем же токеном авторизации возвращает:
{
"error": {
"code": "ResourceNotFound",
"message": "Resource not found.",
"innerError": {
"request-id": "5dac0b98-0335-4de2-b8fa-3b9a2dfbe378",
"date": "2019-04-26T23:23:21"
}
}
}
Есть ли способ получить данные профиля для учетной записи потребителя, все еще пытаясь получить неэкспонированные данные в учетной записи Work / School без возврата 404?