Ошибка файла cookie Samesite на локальном хосте с auth0
Я использую auth0 для реализации аутентификации в моем приложении реакции. Я использую хук useAuth0 () следующим образом:
const { isAuthenticated, isLoading } = useAuth0();
Я также реализовал вход, используя
const { loginWithRedirect } = useAuth0();
.
.
.
<button onClick={() => loginWithRedirect()} />
Когда я нажимаю кнопку, она перенаправляется на auth0, и я могу войти в систему. После входа в систему он перенаправляется обратно в приложение и без каких-либо проблем показывает маршруты, для которых выполнен вход. Однако проблема заключается в том, что когда я вношу какие-либо изменения в приложение, оно перезагружается, и мне снова открывается страница входа, хотя я вошел в систему. На вкладке «Проблемы Chrome» отображается это сообщение.

Я не могу понять, почему он не работает при обновлении, но почему он работает при перенаправлении после входа в систему, и я пытался найти решение со вчерашнего дня, но пока не повезло. Я столкнулся с поиском файла cookie, который вызывает предупреждение Chrome SameSite, что является наиболее близким вопросом, который я мог найти, но, похоже, он не дает правильного ответа о том, как его решить.
Ответы
В конце концов, у меня сработал ответ на еще один вопрос ТАК .
Вот содержание,
Проблема заключалась в том, что и Brave, и Safari использовали Intelligent Tracking Prevention (ITP), что препятствовало работе тихой аутентификации.
Решение, которое сработало для меня, заключалось в том, чтобы включить ротацию токенов обновления (через панель инструментов Auth0) и предоставить дополнительные реквизиты поставщику Auth0.
Два новых свойства, которые нужно добавить: useRefreshTokens={true}
и cacheLocation="localstorage"
.
<Auth0Provider
domain={process.env.REACT_APP_AUTH0_DOMAIN}
clientId={process.env.REACT_APP_AUTH0_CLIENT_ID}
redirectUri={window.location.origin}
onRedirectCallback={onRedirectCallback}
useRefreshTokens={true}
cacheLocation="localstorage"
>
{children}
</Auth0Provider>
Вот официальные документы, чтобы узнать больше о ротации токенов обновления: https://auth0.com/docs/tokens/refresh-tokens
И это была проблема с github, которая прояснила проблему https://github.com/auth0/auth0-react/issues/101