Отправить токен в файлы cookie через setHeaderJavascript

Форум по Javascript
Ответить
Гость
 Отправить токен в файлы cookie через setHeader

Сообщение Гость »


Я работаю над приложением с входом и регистрацией. До сих пор я использовал localstorage для сохранения токена. Я видел вчера, в целях безопасности лучше отправить токен в файлы cookie.

Хотелось бы узнать мнение опытных людей. Подскажите пожалуйста, правильный ли и безопасный такой подход? Спасибо

Вход через интерфейс

const handleLogin = async (e) => { е.preventDefault() константная конфигурация = { заголовки: { «Тип контента»: «приложение/json», }, } пытаться { const res = await axios.post('/api/user/login', data, config) тост.успех(res.data.message) } поймать (ошибка) { console.log(ошибка) тост.ошибка(ошибка.ответ.данные.сообщение) } } // бэкэнд, /api/user/login
пытаться { константная электронная почта = req.body.email константный пароль = req.body.password const user = await User.findOne({электронная почта}) если(!пользователь) { выдать новую ошибку(`Пользователь не существует!`) } // сравниваем пароль const validPassword = ожидайте bcrypt.compare(пароль, user.password) если (! действительный пароль) { выдать новую ошибку («Неверный пароль!») } константные данные знака = { идентификатор пользователя: user._id, имя: имя пользователя.имя, электронная почта: user.email, администратор: user.isAdmin } const токен = jwt.sign(signData,process.env.JWT_SECRET, { истекаетВ: '4ч', }); // несколько статей о том, как отправлять файлы cookie, используется res.cookies.set(...) // но у меня этот способ не работает // Потом я нашел setHeader, и он работает нормально // до сих пор не понимаю, что за последняя часть: Path=/ res.setHeader('Set-Cookie', `token=${token}; HttpOnly; Max-Age=${60 * 60 * 24 * 1}; Path=/`); вернуть res.status(201).json({ успех: правда, сообщение: «С возвращением», }); } поймать (ошибка) { console.log(ошибка) res.status(500).send({ успех: ложь, сообщение: error.message }) }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»