Что я должен изучить, чтобы выяснить/отследить проблему, подобную этой:
У нас есть приложение Angular, вызывающее .Net Core Web API с включенным CORS, и оно проходит аутентификацию через Azure AD, получая токен Bearer. С токеном Bearer время от времени вызовы API завершаются с ошибкой 401 Unauthorized, иногда — 200. Тем не менее, я помещаю один и тот же токен Bearer в любой клиент REST, и вызовы API всегда работают.
Очень ценю любой вклад.
Еще немного контекста/анализа:
- API отлично работает с другими приложениями. Поэтому, если проблема на стороне сервера, это не часто выполняемая часть кода. Проблема может быть в клиентском коде Angular.
Это приложение Angular — единственное приложение, использующее CORS. Это, очевидно, то, что я изучаю.
Локальный сервер разработки (сервер разработки Webpack) и сервер развертывания (IIS) для этого приложения Angular отличаются, но дают один и тот же результат, поэтому это может быть не проблема с конфигурацией сервера.
- Сравнивая ответ 200 с запросом 401, я вижу, что токен Bearer работает на обоих.
- Сравнивая ответ 200 с ответом 401, я вижу, что CORS заголовка работает с обоими.
- Поскольку он дает 401 и, похоже, на самом деле не поступает в веб-API, это связано с аутентификацией. Но я мало что знаю об этом процессе. Любое понимание?