Go - Websocket.Close()

Closes a connection to a websocket

import (
"context"
"fmt"
"github.com/nitrictech/go-sdk/nitric"
)
func main() {
ws, err := nitric.NewWebsocket("public")
if err != nil {
return
}
ws.Close(context.TODO(), "D28BA458-BFF4-404A")
nitric.Run()
}

Parameters

  • Name
    ctx
    Required
    Required
    Type
    context
    Description

    The context of the call, used for tracing.

  • Name
    connectionId
    Required
    Required
    Type
    string
    Description

    The ID of the connection which should be closed.

Examples

Close a connection to the websocket on message

import (
"fmt"
"github.com/nitrictech/go-sdk/faas"
"github.com/nitrictech/go-sdk/nitric"
)
func main() {
ws, err := nitric.NewWebsocket("public")
if err != nil {
return
}
// Broadcast message to all the registered websocket connections
ws.On(faas.WebsocketMessage, func(ctx *faas.WebsocketContext, next faas.WebsocketHandler) (*faas.WebsocketContext, error) {
message := string(ctx.Request.Data())
if message == "close" {
err := ws.Close(ctx.Request.Context(), ctx.Request.ConnectionID())
return ctx, err
}
return next(ctx)
})
nitric.Run()
}
Last updated on Oct 11, 2024