【问题标题】:jQuery socket - 'An attempt was made to use an object that is not, or is no longer, usable'jQuery socket - '试图使用一个不可用或不再可用的对象'
【发布时间】:2020-11-05 22:05:45
【问题描述】:

我正在尝试学习使用套接字。我没有找到有关此错误的任何信息,或者我正在搜索错误的关键字。无论如何,我可以连接到我的套接字,但是当我尝试发送消息时,我收到了这个错误:

InvalidStateError: 试图使用一个不可用或不再可用的对象

$('#send-btn').click(function(){ //use clicks message send button    
        var mymessage = $('#message').val(); //get message text
        var myname = $('#name').val(); //get user name

        if(myname == ""){ //empty name?
            alert("Enter your Name please!");
            return;
        }
        if(mymessage == ""){ //emtpy message?
            alert("Enter Some message Please!");
            return;
        }

        //prepare json data
        var msg = {
        message: mymessage,
        name: myname,
        color : '<?php echo $colours[$user_colour]; ?>'
        };
        //convert and send data to server
        websocket.send('hello');
});

我找不到有关此错误的任何信息,或者我又犯了同样的错误并搜索了错误的关键字。无论如何,我希望你们中的一些人能回答我能做什么,或者指出我正确的方向。

【问题讨论】:

标签: jquery sockets


【解决方案1】:

你调用websocket.send()函数太快了。

您应该在 websocket 网络状态有效或 ESTABLISHED 时调用它。

您可以通过setTimeout(调用websocket.send方法和time的函数)尝试调用。

【讨论】:

    【解决方案2】:

    这是我的情况,当我的互联网连接中断以解决此错误时,您必须在就绪状态正常时发送到套接字:

    if (socket.readyState == 1) {
        socket.send ('bal bla'); 
    }
    

    【讨论】:

      猜你喜欢
      • 2013-12-08
      • 2016-04-30
      • 2019-03-05
      • 1970-01-01
      • 2014-05-21
      • 2015-02-24
      • 2013-09-24
      • 2014-05-19
      • 2013-10-08
      相关资源
      最近更新 更多