HashLocationStrategy предотвращает правильное открытие URL-адреса перенаправления из Supabase
Я делаю приложение, используя Angular и Supabase. При загрузке приложения в Версель столкнулся с проблемой: после перезагрузки страницы, если пользователя нет на главной, выдавалась ошибка 404. Я решил эту ошибку, добавив{ provide: LocationStrategy, useClass: HashLocationStrategy }
. теперь мои пути начинаются так:???.vercel.app/#/
. Все работает, после перезагрузки ошибки 404 нет. Однако появилась еще одна проблема. Я регистрирую пользователей следующим образом:
return database.auth.signUp({
email: user.email,
password: user.password,
options: {
emailRedirectTo:
'???.vercel.app/welcome/',
},
});
А когда в приложении нет HashLocationStrategy, сайт ведет себя как положено: после перехода по ссылке подтверждения в почте создается новая сессия авторизованного пользователя, и текущий адрес выглядит как + параметры сессии из супабазы. После включения HashLocationStrategy я изменил ссылку emailRedirectTo:???.vercel.app/#/welcome/
, и подтверждение ссылки не открывает новый сеанс. если идти по пути, то сначала выглядит как в первом варианте('???.vercel.app/welcome'
+ параметры сеанса), а затем через мгновение параметры сеанса из супабазы исчезают.
В результате автоматический вход после подтверждения невозможен, так как сессия никак не снимается. Однако почта подтверждена и пользователь может войти в систему, войдя в систему самостоятельно. Но проблема в том, что мне все равно нужно пройти этот сеанс после перехода по ссылке, так как еще есть, например, восстановление пароля, для которого действительно необходимо получить сеанс
Как решить проблему изменения пути? Может быть, есть способ избавиться от ошибки 404 в верселе без добавления HashLocationStrategy?