Mam problem z Chrome na iPadzie/iPhonie z tym, co uważałem za proste i działa na pulpicie Chrome (Mac & PC) i Safari na iPadzie/iPhonie.iPad/iPhone Chrome - plik cookie Auth nie jest ustawiony nad postem jquery (ajax) - MVC 3
Mam następujący jQuery na mojej stronie:..
$ ("# login-login-przycisk") click (function() { var username = $ ("# Użytkownik") val() .; var password = $ ("# Hasło") val();
$("#login-loading-icon").show();
$.post("/login", { username: username, password: password }, function (data, response) {
if (response == "success") {
if (data.IsValid) {
window.location.href = "/profile";
}
else {
$("#login-error-message").html(data.ErrorMessage);
$("#login-loading-icon").hide();
}
}
else {
alert("An error occurred, please try again.");
}
});
});
A Action Controller jest kod wygląda następująco:
[HttpPost]
public JsonResult Index(string username, string password)
{
AjaxResponseModel ajaxResponseModel = new AjaxResponseModel();
User user = UserDAL.Select(username, Hash.MD5(password));
if (user != null)
{
if (!user.IsVerified.Value)
{
ajaxResponseModel.AddErrorMessage("Account not verified.");
}
else if (!user.IsActive.Value)
{
ajaxResponseModel.AddErrorMessage("Your account is not active.");
}
else
{
FormsAuthentication.SetAuthCookie(username, false);
}
}
else
{
ajaxResponseModel.AddErrorMessage("Login details incorrect.");
}
return Json(ajaxResponseModel);
}
próbowałem ustawienie Auth Cookie poprzez nie-ajax re zadanie, ale też nie działa.
Odkryłem, że na iPadzie/iPhonie, jeśli używam opcji "Poproś o witrynę na komputery" w menu Chrome, problem znika, ale na tym etapie nie ma koncepcji mobilnego/pulpitu, tj. Chrome zostanie po raz pierwszy powinna być miejscem pulpitu ...
mam ponieważ odkrył, że jest to błąd w .NET i ma być poprawione w wersji 4.5 jednak rozwiązanie z @Froyke jest nadal szybkie i łatwe obejście. – Rob