XMLSocket 在 Firefox 中工作,但不在 IE 中

Posted

技术标签:

【中文标题】XMLSocket 在 Firefox 中工作,但不在 IE 中【英文标题】:XMLSocket working in firefox but not IE 【发布时间】:2010-09-17 05:07:35 【问题描述】:

我正在帮助一位在使用 Flash 应用时遇到问题的客户。 Flash 应用程序使用 XMLSocket 连接到在 localhost 上运行的服务。它在Firefox下运行良好。

它使用以下行来设置安全策略:

System.security.loadPolicyFile("xmlsocket://localhost:10032");

在firefox下运行flash应用,监听10032端口的服务得到一个的连接,响应,运行良好。 IE下,服务永远得不到连接,后续的socket连接也不行。

编辑: 这个问题原来是由在隐藏的 div 标签中嵌入 flash 引起的。在这种情况下,它拒绝发送策略文件请求。不隐藏 div 它可以工作。关于 FF 和 IE 之间不同版本的 flash 的答案是正确的,这就是它在 FF 中工作的原因(它是一个旧版本)。较新的版本不喜欢隐藏的 DIV 标签。

【问题讨论】:

【参考方案1】:

您确定两个浏览器上运行的 Flash 版本完全相同吗?不同版本之间对网络安全的要求似乎发生了显着变化。完全可以在 IE 和 firefox 中安装不同版本的 flash player,因为一个是 activeX 控件,另一个是浏览器插件。

【讨论】:

【参考方案2】:

在向策略文件发送请求的末尾添加“新行”字节。

像这样:"" + "\n"

【讨论】:

以上是关于XMLSocket 在 Firefox 中工作,但不在 IE 中的主要内容,如果未能解决你的问题,请参考以下文章

如何让 window.focus() 在 Firefox 中工作 [重复]

ssl apache vhost 仅在 Firefox 中工作

Javascript 在 chrome 中工作,而不是 firefox 或 ie

推送通知在 Firefox 中工作,但在 React 应用程序中不支持 Chrome

会话无法在 chrome 中工作并在 Firefox 中工作

Jquery 表单提交不能在 chrome 中工作,但在 Firefox 中工作