1

我正在使用代码制作用户登录表单。问题是我可以从 Internet Explorer 登录,但是当我从 Firefox 登录时,相同的代码会在屏幕上打印代码的 HTML 版本。我正在使用java过滤器。

下面的代码正在屏幕上打印。

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html  "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html>
    <head>
<meta HTTP_EQUIV="pragma" content="no-cache"/>
<meta HTTP_EQUIV="cache-control" content="no-cache" />
<meta HTTP_EQUIV="cache-control" content="no-store"/>
<meta HTTP_EQUIV="expires" content="0" />
<title>ABC</title>
<script language="javascript" > 
 if(window.parent.length > 0) {
         var url = "/java/ehr.Home";
         var par = "null";
         if(par != "" && par != "null") { 
                 url = url + "?" + par ;
         }
         if(url != "") { 
                 window.parent.location = url; 
         }
 }
</script>
</head>
<frameset rows="111,*"  framespacing="0" frameborder="0" border="0">
<frame name="top" src="ehr.cms.PageBuilder?Page=topNavigationLegacy:/manager/home.xml" marginwidth="0" marginheight="0" scrolling="no" noresize="">
<frame name="middle" src="ShowLoading?LanguageCode=en&msgid=IDL_LOADING&redirect=/java/ehr.cms.PageBuilder?Page=topNavigationLegacy:/manager/home.xml" marginwidth="0" marginheight="0" scrolling="auto" noresize="" />
<frame name="middle" src="ehr.cms.PageBuilder?Page=/manager/home.xml" marginwidth="0" marginheight="0" scrolling="auto" noresize="">
<noframes>
<body>
<p>Please use a browser which is able to show FRAMESETS!</p>
</body>
</noframes>
</frameset>
</html>

我还在java过滤器中设置了内容类型“text/html”,但遇到了同样的问题。谁能看看我的问题。

4

1 回答 1

0

似乎您的 Web 服务器正在传送内容类型不正确的 HTTP 响应。您可以通过查看浏览器的页面信息页面来确认这一点:使用“工具 > 页面信息”菜单项或 CTRL-I。我希望它会显示 Firefox 认为页面类型类似于“文本/纯文本”。

在“工具”菜单中,您应该找到其他工具,可以让您查看响应实际包含的内容;即“内容类型”标头包含的内容。

我想 IE 呈现页面的原因是它只是更宽容了来自服务器的基本上不正确的 HTTP 响应。


我还在java过滤器中设置了内容类型“text/html”,但遇到了同样的问题。

显然,这不能正常工作。(也许你做得不对?)在浏览器端检查实际的响应头应该可以帮助你验证这一点。

于 2012-10-15T13:01:44.513 回答