gpt4 book ai didi

iphone - iPad/iPhone Chrome - Auth Cookie 未通过 jquery post (ajax) 设置 - MVC 3

转载 作者:行者123 更新时间:2023-12-03 18:33:02 24 4
gpt4 key购买 nike

我在 iPad/iPhone 上使用 Chrome 时遇到了问题,我认为这是一项足够简单的任务,并且可以在 Chrome 桌面(Mac 和 PC)和 iPad/iPhone 上的 Safari 上运行。

我的页面上有以下 jquery:

$("#login-login-button").click(function () { var 用户名 = $("#用户名").val(); var 密码 = $("#Password").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.");
}
});
});

Controller 操作的代码如下所示:

[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);
}

我尝试通过非 ajax 请求设置身份验证 Cookie,但它也不起作用。

我发现,在 iPad/iPhone 上,如果我使用 Chrome 菜单中的“请求桌面站点”,问题就会消失,但是此时我的网站上没有移动/桌面的概念,即什么Chrome 第一次获得的应该是桌面版网站...

最佳答案

已经在这里回答:Asp.Net Forms Authentication when using iPhone UIWebView

我使用了默认配置,考虑到当前的浏览器分布,它更合理。

<browsers>
<browser refID="Default">
<capabilities>
<capability name="cookies" value="true" />
</capabilities>
</browser>
</browsers>

关于iphone - iPad/iPhone Chrome - Auth Cookie 未通过 jquery post (ajax) 设置 - MVC 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11324835/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com