У меня есть статическая HTML-страница, которая позволяет пользователю войти в систему, а затем вызвать другие веб-службы для обновления содержимого.Имя пользователя и пароль отправляются в службу WCF REST через JQuery.Служба входа выглядит следующим образом:
[WebInvoke(UriTemplate = "", Method = "POST")]
public bool Login(ServiceUser user)
{
if(validCredentials(user)){
FormsAuthentication.SetAuthCookie(user.Username, true);
return true;
}
return false;
}
Но до того, как это произойдет, при загрузке страницы я вызываю другую службу, чтобы узнать, прошел ли пользователь аутентификацию.Эта служба выглядит следующим образом:
[WebGet(UriTemplate = "isAuthenticated")]
public bool IsAuthenticated()
{
return HttpContext.Current.User.Identity.IsAuthenticated;
}
Таким образом, если они перезагрузят страницу, но уже вошли в систему, я не буду запрашивать у них их пароль снова.IsAuthenticated, похоже, не изменит свое значение, если я не закрою и снова не открою браузер.Обновление страницы не меняет значение.Я кодирую это неправильно?Это кэширует значение, так как это WebGet?