取决于浏览器URL,IE上的WebSocket未定义。为什么?

问题描述 投票:0回答:1

我的简单websocket.html如下所示

<script type = "text/javascript">
function webSocketTest(){
    if ('WebSocket' in window)
    {
        alert('supported');
    }
    else
    {
        alert('not supported');
    }
}

webSocketTest();

</script>

无论在哪里,我都可以在Chrome上获得“支持”的消息。

但在IE上(10和11)

  1. 如果我直接(本地)使用浏览器打开该html文件,它可以正常工作。 我可以得到“支持”的消息。
  2. 但是,如果我将该html文件放在apache或IIS下并通过url打开它,则表示“不支持”。 (例如,http://test.mysite.com/websocket.html 当然,我设置主机文件,如127.0.0.1 test.mysite.com)
  3. 我使用两个不同的URL设置与主目录相同的文件夹。一个用于'test.abc.com/websocket.html',另一个用于'test.ddd.com/websocket.html'。奇怪的是,第一个没有用,但第二个效果很好。(abc.com是我的公司名称,实际上它不是abc,它是另一个名字..) abc.com可以设置为可信站点一次,删除它也不起作用。 :(

有谁知道这是什么问题?

javascript html5 internet-explorer websocket
1个回答
0
投票

我终于找到了问题所在。打开工具兼容性视图设置。然后取消选中所有框。

之前我曾将abc.com网站添加到此兼容性设置列表中。删除它也没有在当时工作,但在取消选中所有复选框之后,它现在正在工作。

我希望这能帮助那些有这个问题的人。

© www.soinside.com 2019 - 2024. All rights reserved.