coder / coder/websocket

Allow customize how HTTP errors are rendered when `websocket.Accept` fails to upgrade

Offen
#545 4 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Go
Sterne
5.5k
Forks
372
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

IDEA: Might be as simple as a new `HttpErrorRenderer` (or `OnError`, etc.) option added to `websocket.AcceptOptions`. When unspecified, default to a fn that implements current rendering behavior. It would take at minimum a `ctx`, the `err` and the http `status` code.

Nice addition: the full set of `errors.New("..")` would be exposed to user so that one can use `errors.Is` to get more granularity than provided http statuses.

We need this feature in order to produce (a standardized JSON error response format) when an error occurs in order to match the rest of our API which produces this error response format for all of its endpoints. Current hard-coded behavior prevents us to comply with our policy when WS upgrade fails in this library. Our user thus can't systematically assume this nice JSON format and must workaround this limitation...

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.