В предупреждении JavaScript (document.cookie); не показывает.ASPXAUTH Cookie, хотя сниффер показывает его,
Мне нужен он, потому что у меня есть Запрос Ajax к серверу, запрос не должен происходить, когда пользователь уже зарегистрирован,
если я не могу проверить.ASPXAUTH на соображение безопасности, что я должен сделать, чтобы проверить, зарегистрирован ли пользователь уже.
Спасибо
Файл cookie аутентификации помечен как http-only, что означает, что к нему нельзя получить доступ с помощью javascript. Если вы хотите проверить, аутентифицирован ли пользователь, просто выведите переменную javascript, скрытое поле или что угодно из кода программной части. Затем вы можете легко проверить это в JS.
Установлен файл cookie .ASPXAUTH, вы, очевидно, правы . Он используется, чтобы определить, вошел ли пользователь в систему.
Чтобы получить то, что вам нужно, просмотрите свой web.config для раздела конфигурации:
<authentication mode="Forms">
<forms
loginUrl="~/login.aspx"
protection="All"
timeout="30"
name="ExampleSite.FormsAuthentication"
path="/"
requireSSL="false"
slidingExpiration="true"
defaultUrl="index.aspx"
cookieless="UseDeviceProfile"
enableCrossAppRedirects="false"
/>
</authentication>
Когда пользователь успешно аутентифицирован, cookie будет установлен на основе name = Параметр «ExampleSite.FormsAuthentication». Он истечет после выхода из системы или по истечении сеанса. Вы увидите файл cookie в Chrome / FFX или другом используемом вами браузере с именем ExampleSite.FormsAuthentication с зашифрованным значением. Очевидно, что используемый вами параметр имени будет другим, а не ExampleSite.FormsAuthentication, но вы поняли идею.
Вы всегда можете проверить, существует ли cookie. Как уже упоминалось, будьте осторожны с http-only (по отношению к JS). Поскольку вы также можете переопределить это значение в web.config, чтобы получить к нему доступ с помощью JS.
<httpCookies httpOnlyCookies="false" requireSSL="false" domain="" />