边缘浏览器中未定义PHP Websocket

时间:2017-01-31 12:07:55

标签: javascript php websocket microsoft-edge phpwebsocket

我开发了一个多人纸牌游戏,因此使用了websocket。为了在php中实现websocket,我使用了this library

我把它放到我的ubuntu服务器上,程序在Chrome浏览器和Firefox中运行正常(前端是使用Javascript实现的)。 使用边缘浏览器时,会出现错误,指出“ReferenceError:WebSocket未定义”。但是在互联网上我已经读到Edge应该通常支持websockets。

我已经检查过,文档模式是否是另一个IE版本,但它也设置为edge。 确切的版本是11.0.0600.18537。

以下是我的代码(虽然我不认为这是一个问题,因为它在其他浏览器中工作)

 connectToSocket=function() {
    var host = "ws://[host]:9000/echobot"; 

    try
    {
       socket = new WebSocket(host);
       console.log('WebSocket - status ' + socket.readyState);
       ...
    }
    catch(ex){
        console.log('some exception : ' +ex);      
    }

有人知道边缘会出现什么问题吗?

1 个答案:

答案 0 :(得分:8)

您确定要在代码中编写WebSocket吗?该错误表示未定义Websocket(使用非大写s)。

实际的班级名称为WebSocket,资本为S

请确认您粘贴的代码与您在应用程序中使用的代码完全相同。

修改

在评论中进行了一些进一步的讨论之后,我相信您的浏览器中的WebSocket支持可能是disabled。根据我自己的experimentCan I Use,您的浏览器版本(11.0.0600.18537)应支持WebSocket。