[英]ASP.NET Forms Authentication with Android Browser
我用一种简单的方法使用ASP.NET Forms Authentication。 身份验证使用cookie来存储凭据。
在以下浏览器中完美运行:桌面:Chrome,Safari,IE,...移动:iPhone浏览器,Opera Mobile ...
我按下按钮表单的身份验证,然后重定向到应用程序页面。
但是,在Android浏览器中,我按下按钮,什么也没有。
ASP.NET Forms身份验证的配置很简单:
<authentication mode="Forms">
<forms loginUrl="MLogin.aspx"
timeout="30"
name=".MOBAUTH"
path="/"
defaultUrl="Main.aspx"
cookieless="AutoDetect">
<credentials passwordFormat="Clear">
<user name="dev" password="123456"/>
</credentials>
</forms>
</authentication>
<authorization>
<deny users="?" />
</authorization>
有谁知道可能会发生什么?
补充...
MLogin.aspx使用一种简单的方法来验证用户:
private void authenticate()
{
if (FormsAuthentication.Authenticate("dev", this.txtPass.Text.Trim()))
FormsAuthentication.RedirectFromLoginPage("dev", true);
Response.End();
}
原因是Response.End()。 该功能过早地杀死了您的数据流。 完全没有必要。
不同的浏览器以不同的方式处理Response.End()。 有些人会渲染页面,即使您结束了流,有些也不会渲染它。
检查响应的Set-Cookie标题字段中的“expires”参数,并确保将手机设置为正确的时间和日期。 如果浏览器认为cookie已经过了它的到期日期,它就不会存储它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.