Распространенная реализация авторизации в SPA выглядит так:
axios.post('auth', authData)
.then(res => {
token = res.data;
});
localStorage.setItem('token', token);
axios.defaults.headers.common['token'] = token;
Во всяком случае во многих туториалах она выглядит примерно так.
Вчера смотрел курс Ильи Кантора по авторизации в WebSocket, где он рассматривал передачу session_id на сервер через вебсокеты. Авторизация в проекте была сделана на куках и стояла задача передать sid из куки в ws соединение.
Первый возможный вариант, на который указал Кантор - это убрать с кук флаг httpOnly и получить к ним доступ из js.
Но тут же оговорился, что так небезопасно делать, из-за xss.
Но ведь sid в localStorage это то же самое, что и sid в куках без httpOnly. Я имею ввиду доступность этих данных.
Так можно ли делать авторизацию способом из туториалов с сохранением sid в localStorage?