WebSocket class abstract interface

The interface for WebSocket connections.

import 'package:web_socket/src/web_socket.dart';

void main() async {
  final socket =
      await WebSocket.connect(Uri.parse('wss://ws.postman-echo.com/raw'));

  socket.events.listen((e) async {
    switch (e) {
      case TextDataReceived(text: final text):
        print('Received Text: $text');
        await socket.close();
      case BinaryDataReceived(data: final data):
        print('Received Binary: $data');
      case CloseReceived(code: final code, reason: final reason):
        print('Connection to server closed: $code [$reason]');
    }
  });

  socket.sendText('Hello Dart WebSockets! 🎉');
}
Implementers

Properties

events Stream<WebSocketEvent>
A Stream of WebSocketEvent received from the peer.
no setter
hashCode int
The hash code for this object.
no setterinherited
protocol String
The WebSocket subprotocol negotiated with the peer.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

close([int? code, String? reason]) Future<void>
Closes the WebSocket connection and the events Stream.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
sendBytes(Uint8List b) → void
Sends binary data to the connected peer.
sendText(String s) → void
Sends text data to the connected peer.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

connect(Uri url, {Iterable<String>? protocols}) Future<WebSocket>
Create a new WebSocket connection.