我正在开发一个带有 Siteminder 身份验证的 Flex 3.5 Web 应用程序,但我在注销和 IE9 方面遇到了一些问题。
点击注销按钮我打电话
siteminder.xxx.it/siteminderagent/xxx-logout.fcc/
并且第一次注销会进行这些调用
302 HTTP siteminder.xxx.it /siteminderagent/xxx-logout.fcc/ 313 无存储文本/html;charset=iso-8859-1 iexplore:40080
302 HTTP xxx.yyy.it /client-web 461 no-store text/html; charset=iso-8859-1 iexplore:40080
200 HTTP siteminder.xxx.it /siteminderagent/mylogin.fcc?TYPE=33554433&REALMOID=06-00006cf6-458d-1d40-964a-0265c0a85024&GUID=&SMAUTHREASON=0&METHOD=GET&SMAGENTNAME=-SM %2fRANRmsQJxM%2fCmccgQ4%2bXx0vaGseQ3Fsv1KWcytAoO6LfYuVpjXDQ6XkxgUsWf&TARGET=-SM-http%3a%2f%2fxxx%2eyyy%2eit%2fclient--web 2.897 无存储文本/html;charset=iso-8859-1 iexplore:40080
302 HTTP siteminder.xxx.it /siteminderagent/xxx-logout.fcc 313 no-store text/html; 字符集=iso-8859-1 iexplore:40080
302 HTTP xxx.yyy.it /client-web 461 无存储文本/html;charset=iso-8859-1 iexplore:40080
200 HTTP siteminder.xxx.it /siteminderagent/mylogin.fcc?TYPE=33554433&REALMOID=06-00006cf6-458d-1d40-964a-0265c0a85024&GUID=&SMAUTHREASON=0&METHOD=GET&SMAGENTNAME=-SM %2fRANRmsQJxM%2fCmccgQ4%2bXx0vaGseQ3Fsv1KWcytAoO6LfYuVpjXDQ6XkxgUsWf&TARGET=-SM-http%3a%2f%2fxxx%2eyyy%2eit%2fclient--web 2.897 无存储文本/html;字符集=iso-8859-1 iexplore:40080
如果我在 siteminder 上再次登录,我会正确地重定向到我的 flex 网络应用程序。下一次注销不起作用,因为似乎 IE)忽略了这个 302 重定向
302 HTTP siteminder.xxx.it /siteminderagent/xxx-logout.fcc/ 313 无存储文本/html;字符集=iso-8859-1 iexplore:36916
从提琴手我可以看到这个调用的响应是
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>302 Found</title>
</head><body>
<h1>Found</h1>
<p>The document has moved <a href="http://xxx.yyy.it/client-web">here</a>.</p>
<hr>
<address>Apache/2.2.3 (Red Hat) Server at siteminder.xxx.it Port 80</address>
</body></html>
在缓存选项卡上我可以看到
缓存控制:无存储日期:2013 年 10 月 4 日星期五 16:03:54 GMT
为什么 IE9 不能正确读取这个 302 重定向?
注意:如果我禁用 IE 缓存,一切正常!