起始页面是Logon.aspx身份验证后直对过Forms验证到Default.aspxDefault.aspx页面IFrame设置如下<frameset cols="20%,80%" border="0" frameSpacing="0" frameBorder="0"> <frame name="mapFrame" src="map.aspx" noresize>
<frame name="mainFrame" src="Main.aspx" noresize>
<noframes>.....</noframes></frameset>
左边的是 导航栏,右边为主窗体Forms 的设置里有//得到原来请求的url
string requestUrl = FormsAuthentication.GetRedirectUrl(FormsAuthentication.FormsCookieName,false);
//重新定向到请求的url
HttpContext.Current.Response.Redirect(requestUrl); 然后在业务业面中判断 身份权限,如果身分不符,则提示并导到Logon.aspx页面重新登录但现在问题是:
1.
比如CustomerInfo.aspx页面在 mainFrame中,它只能Administrator身份的可以访问。
否则到Logon.aspx页面登录。
但现在这样的话 logon.aspx页面打开在mainFrame中,登录后自动到Default.aspx中,而Default.aspx也打开在mainFrame中,这样的话页面就就出现了两个 导航栏了。2.我要注销后同样出现Logon.aspx单一页面
pubilc void SingOut()
{
FormsAuthentication.SignOut();
Response.Redirect("Logon.aspx");
}
我身份验证的 处理 在Logon.aspx中,所以注销操作也得在Logon.aspx中进行。
我在注销操作处用一个xmlHttp来传一个值,在Logon.aspx中判断,如果注销,则调用上面两句。
但出现同样的问题 后来我改成FormsAuthentication.SignOut(); 后关闭窗体
SingOut();
Response.Write("<script language='javascript'>parent.close()</script>");
这样却不能关闭窗体. 用window.close()不行,parent.window.close()也不行。
<frame name="mainFrame" src="Main.aspx" noresize>
<noframes>.....</noframes></frameset>
左边的是 导航栏,右边为主窗体Forms 的设置里有//得到原来请求的url
string requestUrl = FormsAuthentication.GetRedirectUrl(FormsAuthentication.FormsCookieName,false);
//重新定向到请求的url
HttpContext.Current.Response.Redirect(requestUrl); 然后在业务业面中判断 身份权限,如果身分不符,则提示并导到Logon.aspx页面重新登录但现在问题是:
1.
比如CustomerInfo.aspx页面在 mainFrame中,它只能Administrator身份的可以访问。
否则到Logon.aspx页面登录。
但现在这样的话 logon.aspx页面打开在mainFrame中,登录后自动到Default.aspx中,而Default.aspx也打开在mainFrame中,这样的话页面就就出现了两个 导航栏了。2.我要注销后同样出现Logon.aspx单一页面
pubilc void SingOut()
{
FormsAuthentication.SignOut();
Response.Redirect("Logon.aspx");
}
我身份验证的 处理 在Logon.aspx中,所以注销操作也得在Logon.aspx中进行。
我在注销操作处用一个xmlHttp来传一个值,在Logon.aspx中判断,如果注销,则调用上面两句。
但出现同样的问题 后来我改成FormsAuthentication.SignOut(); 后关闭窗体
SingOut();
Response.Write("<script language='javascript'>parent.close()</script>");
这样却不能关闭窗体. 用window.close()不行,parent.window.close()也不行。
{
FormsAuthentication.SignOut();
//Response.Redirect("Logon.aspx");
//改成脚本执行
Response.Write("<script>window.location.href='"+ApplicationPath+"/Logon.aspx';</script>");//ApplicationPath表示应用程序目录地址
}