我正在使用一个asp.net 2.0站点(称为站点1),该站点中有一个iframe,它加载了另一个站点(站点2),它也是一个asp .net网站,由我们的团队开发。当您登录到站点1时,站点2后面的站点也会登录,这样当您单击iframe选项卡时,将显示站点2,并且用户已登录(以防止用户必须登录两次)。Asp.Net 2综合站点如何以编程方式注销第二个站点
我遇到的问题是,当用户注销站点1,然后我们调用一些清理方法来执行FormsAuthentication.SignOut和清理会话变量等,但此刻当站点2上的用户没有调用清理。所以问题是如果用户在浏览器中打开站点2,则打开站点2,用户仍然登录,这是不希望的。任何人都可以给我一些关于这个最好的方法的指导?一个可能的方法,我虽然只是点击登出按钮,我可以打电话给网站2上的自定义页面,它会做注销。下面
HttpWebRequest request;
request = ((HttpWebRequest)(WebRequest.Create("www.mywebsite.com/Site2Logout.aspx")));
request.Method = "POST";
HttpCookie cookie = HttpContext.Current.Request.Cookies[FormsAuthentication.FormsCookieName];
Cookie authenticationCookie = new Cookie(
FormsAuthentication.FormsCookieName,
cookie.Value,
cookie.Path,
HttpContext.Current.Request.Url.Authority);
request .CookieContainer = new CookieContainer();
request .CookieContainer.Add(authenticationCookie);
response.GetResponse();
问题我这段代码有代码是,当我在网站2运行和调试,并检查用户是否已验证他们不是我不明白,因为如果我打开浏览器,浏览到站点2我仍然通过身份验证。任何想法,采取不同的方向等?请让我知道,如果你需要任何更多的信息,或者如果我说我的东西剂量是有道理的。
谢谢