NOPCOMMERCE.AUTH и CustomerCookie в Nop 3.0
Как система может сделать это так? для зарегистрированного пользователя даже значение CustomerCookie не может быть сохранено после перезапуска браузера, даже если в коде истек срок действия, равный 1 году. Но для гостя это работает, оба использовали один и тот же код для установки CustomerCookie.
Я знаю, что есть два места для обработки пользовательских файлов cookie. 1. CustomerCookie находится в WebWorkContext. Этот файл cookie будет храниться 1 год.
cookieExpires = 24*365; //TODO make configurable
cookie.Expires = DateTime.Now.AddHours(cookieExpires);
- для зарегистрированного пользователя он будет использовать FormsAuthentication.FormsCookieName для сохранения файла cookie и обновит значение CustomerCookie после успешного входа пользователя.
Я провел тестирование ниже: 1. Для гостей откройте страницу без входа в систему и закройте все браузеры, затем снова откройте браузер. два значения Nop.customer одинаковы, что означает, что гостевой cookie успешно сохранен.
- Для зарегистрированного пользователя, шаг 1. откройте страницу и войдите под именем пользователя. Я обнаружил, что значение cookie NOPCOMMERCE.AUTH сохраняется, но время его окончания истекает. Значение cookie Nop.customer установлено для зарегистрированного пользователя, срок действия которого действительно равен 1 году. Шаг 2. Затем я закрываю весь браузер и снова открываю, я финансирую значение CustomerCookie, измененное на гостевое значение, сохраненное значение cookie на шаге 1 исчезает, срок действия которого истекает через 1 год.