Класс WebSocketTransformer
Класс WebSocketTransformer предоставляет возможность установить соединение WebSocket на базе запроса HttpRequest. Он поддерживает установление соединения как для одного запроса HttpRequest, так и для потока запросов HttpRequest.
Для установки соединения с одним запросом HttpRequest используйте статический метод upgrade.
HttpServer server;
server.listen((request) {
if (...) {
WebSocketTransformer.upgrade(request).then((websocket) {
...
});
} else {
// Do normal HTTP request processing.
}
}); Для преобразования потока событий HttpRequest используется преобразователь потока, преобразующий поток HttpRequest в поток WebSocket путем обновления каждого HttpRequest из HTTP или HTTPS сервера в протокол WebSocket.
server.transform(new WebSocketTransformer()).listen((webSocket) => ...);
Этот преобразователь стремится реализовать WebSocket в соответствии со спецификацией RFC6455.
- Реализованные типы
Конструкторы
- WebSocketTransformer({dynamic protocolSelector(Список<
Строка> protocols)?, CompressionOptions compression = CompressionOptions.compressionDefault}) factory - Создать новый WebSocketTransformer.
Свойства
- hashCode → Целое число только для чтения, унаследованное
- Хэш-код этого объекта.
- runtimeType → Тип только для чтения, унаследованное
- Представление типа объекта во время выполнения.
Методы
- bind(
Поток< HttpRequest> stream) → Поток< WebSocket> унаследованное - Преобразует предоставленный
stream. - cast<
RS, RT>( ) → StreamTransformer< RS, RT> унаследованное - Предоставляет
StreamTransformer<RS, RT>представление этого преобразователя потоков. - noSuchMethod(
Вызов invocation) → dynamic унаследованное - Вызывается при попытке доступа к несуществующему методу или свойству.
- toString(
) → Строка унаследованное - Строковое представление этого объекта.
Операторы
- operator ==(
Объект other) → Булево унаследованное - Оператор равенства.
Статические методы
- isUpgradeRequest(
HttpRequest request) → Булево - Проверяет, является ли запрос допустимым запросом WebSocket для обновления.
- upgrade(
HttpRequest request, {dynamic protocolSelector(Список< Строка> protocols)?, CompressionOptions compression = CompressionOptions.compressionDefault}) → Future< WebSocket> - Обновляет запрос HttpRequest на соединение
WebSocket. Если запрос не является допустимым запросом WebSocket для обновления, будет возвращен HTTP-ответ со статусом 500. В противном случае возвращаемое будущее завершится сWebSocket, когда процесс обновления завершится.
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-io/WebSocketTransformer-class.html