Я использую стороннюю службу аутентификации, которая при успешной аутентификации возвращает access_token
in URL
.
Интересно то, что все отлично работает на моем компьютере разработчика, но при публикации в производство оно не обрабатывает путь, и я получаю страницу generic c 404.html
на сервере, которая сообщает мне, что React Router
просто не обрабатывает этот маршрут.
Обратный вызов выглядит так в URL: https://myapp.com/login#access_token=somereallylongstring&scope=openid%20profile%20email&expires_in=7200&token_type=Bearer&state=anotherreallylongstring
Маршрут, который я определил в своем приложении для входа в систему, выглядит следующим образом:
<Route path="/login">
<Login />
<Route>
Опять же, это работает хорошо локально. Что мне здесь не хватает?
PS Моя версия React Router
в package.json
равна "react-router-dom": "^5.1.2"
ОБНОВЛЕНИЕ: Я выяснил, почему это происходит, но не уверен, каково решение.
Я делаю static website hosting
через мой Azure Blob Storage
, который понимает, что index.html
- это веб-страница, которую он должен обслуживать. Он также понимает концепцию обслуживания веб-страниц на основе URL
в запросе. Поэтому, когда обратный вызов возвращается как https://myapp.com/login#...
, он ищет страницу login.html
, но не находит ее, поэтому отображает общую страницу c 404.html
.
Прямо сейчас я Я не уверен, что решение, поэтому я буду признателен за любые предложения.