2016-08-24 2 views
0

Я заканчиваю куки на javascript на стороне клиента, а затем перенаправляю людей на приложение js-сервера на стороне сервера.Что происходит, когда вы истекли на стороне клиента cookie и на стороне сервера?

К сожалению, когда я проверяю req.cookies ... серверную сторону, файлы cookie, срок действия которых истек, все еще там. Как я могу исправить эту проблему, чтобы убедиться, что файлы cookie истекли до перехода на сервер?

так что файлы cookie истекли на стороне клиента, но при переадресации на серверную сторону и проверке req.cookies значение cookie все еще существует.

Что происходит, так это то, что я вызываю сторону клиента Cookie.expire('access_token'); и проверяю серверную сторону req.cookies.access_token, и проверка возвращает true. Есть ли способ быть уверенным в том, что cookie был удален?

ответ

0

Если вы используете клиентскую версию cookie с ограниченным сроком действия, объект req.cookies не должен содержать действительный файл cookie. Вы уверены, что срок их действия заканчивается раньше, чем отправляется звонок AJAX? Разумеется, вы должны подумать о построении в обратном вызове или обещании функции, истекающей куки.

Лучшим способом сделать это может быть только на стороне сервера. Это означает, что вместо истечения срока действия cookie на клиенте отправьте быстрый вызов AJAX на сервер для истечения срока действия cookie в базе данных. Это более безопасный способ устаревания файлов cookie, но как вы его реализуете, зависит от того, как вы храните свои файлы cookie и/или данные сеанса.

+0

Есть ли способ на стороне клиента, чтобы проверить, что файл cookie удален? происходит то, что я называю 'Cookie.expire ('access_token');' клиентская сторона и проверяет 'req.cookies.access_token' сторону сервера, и проверка возвращает true –

Смежные вопросы