V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Bluek404
V2EX  ›  问与答

Dart 的 WebSocket 死活发送不了信息

  •  
  •   Bluek404 · 2014-11-04 13:42:09 +08:00 · 2440 次点击
    这是一个创建于 3702 天前的主题,其中的信息可能已经有所发展或是发生改变。
    import 'dart:html';
    
    void main() {
      var webSocket = new WebSocket('ws://127.0.0.1:4001');
    
      var data = "test message";
    
      if (webSocket != null && webSocket.readyState == WebSocket.OPEN) {
        webSocket.send(data);
      } else {
        print('WebSocket not connected, message $data not sent, State: ${webSocket.readyState}');
      }
    }
    

    死活send不了

    状态一直是WebSocket.CONNECTING

    如果直接send的话就报错

    InvalidStateError: An attempt was made to use an object that is not, or is no longer, usable

    但是完全可以接收到服务端发送的信息

    完全是按照官方doc写的啊

    官方文档:

    https://api.dartlang.org/apidocs/channels/stable/dartdoc-viewer/dart-dom-html.WebSocket

    2 条回复    2014-11-04 14:14:03 +08:00
    Bluek404
        1
    Bluek404  
    OP
       2014-11-04 13:51:06 +08:00
    Dartium的报错:
    Exception: InvalidStateError: Still in CONNECTING state.
    Bluek404
        2
    Bluek404  
    OP
       2014-11-04 14:14:03 +08:00
    好吧解决了
    用webSocket.onOpen就行
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3153 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 12:57 · PVG 20:57 · LAX 04:57 · JFK 07:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.