coder / coder/websocket

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

Aperta
#545 4 commenti 1 reazione 0 assegnatari Vedi su GitHub
Lingua principale
Go
Stelle
5.5k
Fork
372
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

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...

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.