Сообщение об исключении мне кажется довольно описательным.Метод Validate
вызывает удаленный сервер для получения документа метаданных и получает ошибку 500 от сервера.Это является причиной исключения.
Вызываемый URL-адрес встроен в поле appctx.amurl
внутри полезной нагрузки токена, как показано в следующем примере, взятом из this doc :
{
"aud": "https://mailhost.contoso.com/IdentityTest.html",
"iss": "00000002-0000-0ff1-ce00-000000000000@mailhost.contoso.com",
"nbf": "1331579055",
"exp": "1331607855",
"appctxsender": "00000002-0000-0ff1-ce00-000000000000@mailhost.context.com",
"isbrowserhostedapp": "true",
"appctx": {
"msexchuid": "53e925fa-76ba-45e1-be0f-4ef08b59d389@mailhost.contoso.com",
"version": "ExIdTok.V1",
"amurl": "https://mailhost.contoso.com:443/autodiscover/metadata/json/1"
}
}
В этом примере вы можете видеть поле amurl
, которое вызывается во время Validate
.Процесс проверки еще более подробно описан в этом документе , включая извлечение документа метаданных на третьем этапе.
Реальный вопрос заключается в том, что является причиной ошибки 500 при попыткеполучить документ метаданных?Это может быть найдено в некоторых журналах на стороне сервера.Просто предположение, но так как вы сказали, что иногда это удается, возможно, проблема связана с нагрузкой на сервер.Вам нужно будет продолжить расследование, чтобы выяснить.
Что касается: «Кто-нибудь видел это исключение раньше?»Не я, но я уверен, что ответ - да.;)