0
Я делаю проверку подлинности форм следующим образом:Проверки подлинности форм не работает с JQuery
if (strRole != null)
{
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
1, // version
username, // user name
DateTime.Now, // create time
DateTime.Now.AddSeconds(500), // expire time
false, // persistent
strRole); // user data
string strEncryptedTicket = FormsAuthentication.Encrypt(ticket);
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, strEncryptedTicket);
Context.Response.Cookies.Add(cookie);
return true;
}
затем на другой странице у меня есть JQuery следующего
$.ajax({
type: "POST",
crossOrigin: true,
url: "./WebService.asmx/Login",
data: JSON.stringify({'username':username,'password':password}),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
if (response.d === true) {
$(location).attr('href', '/dash/dashboard.aspx')
}
else {
ShowErrorModal("Invalid login or password.","login");
}
}
});
вопрос находится в on_load случае приборной панели. aspx, всегда указано значение
HttpContext.Current.User.Identity.IsAuthenticated
вопрос в том, что он считает, что пользователь не является проверку подлинности.
любая помощь будет очень признательна.
Это кажется почти нормально. Вы отлаживали и видите, что имя пользователя/пароль передается должным образом? –
Да, я проверил переменную «cookie», и есть данные внутри. – user1144596
Ajax отлично выглядит. Я думаю, проблема связана с кодом C#. Что такое ** strRole ** и получает ли он значение? –