#blazor-webassembly #.net-5
#blazor-webassembly #.net-5
Вопрос:
У меня есть веб-сборка Blazor .Net5, которая использует аутентификацию Auth0 OIDC. Я настраиваю аутентификацию, следуя этим инструкциям: https://auth0.com/blog/securing-blazor-webassembly-apps /
Следуя этим инструкциям, я смог разработать свое приложение локально и заставить его работать с аутентификацией Auth0. Однако, когда я развертываю приложение с использованием статических веб-приложений Azure, проверка подлинности больше не работает. Просматривая инструменты разработчика Chrome, я вижу, что он успешно (302) вызывает мою конечную точку авторизации:
https://login.mysite.com/authorize?clientid=*****... (302)
Следующий URL-адрес — это обратный вызов на мой сайт, который завершается с ошибкой 404:
https://myapp.mysite.com/authentication/login-callback?code=***... (404)
В моем index.html:
<script src="_content/Microsoft.AspNetCore.Components.WebAssembly.Authentication/AuthenticationService.js"></script>
Есть идеи, что я могу сделать, чтобы это исправить?
Ответ №1:
Я добавил маршруты.файл json в wwwroot со следующим, чтобы устранить проблему.
{
"routes": [
{
"route": "/*",
"serve": "/index.html",
"statusCode": 200
}
]
}
Комментарии:
1. Отлично работает, спасибо! Со своей стороны, мне пришлось добавить маршрут в свой api, чтобы убедиться, что он не обслуживается Blazor. { «route»: «/api/ *» }
2. Спасибо за это, как вы это поняли ?!