Skip to content

Instance Method

webSocket(_:maxFrameSize:shouldUpgrade:onUpgrade:)

Adds a route for opening a web socket connection
@discardableResult @preconcurrency func webSocket(_ path: PathComponent..., maxFrameSize: WebSocketMaxFrameSize = .`default`, shouldUpgrade: @escaping @Sendable (Request) -> EventLoopFuture<HTTPHeaders?> = {
            $0.eventLoop.makeSucceededFuture([:])
        }, onUpgrade: @escaping @Sendable (Request, WebSocket) -> ()) -> Route

Parameters

path

Path components separated by commas.

maxFrameSize

The maximum allowed frame size. See NIOWebSocketServerUpgrader.

shouldUpgrade

Closure to apply before upgrade to web socket happens. Returns additional HTTPHeaders for response, nil to deny upgrading. See NIOWebSocketServerUpgrader.

onUpgrade

Closure to apply after web socket is upgraded successfully.

Return Value

Route instance for newly created web socket endpoint