upgrader.go 695 B

12345678910111213141516171819202122232425
  1. package gorilla
  2. import (
  3. "net/http"
  4. "github.com/kataras/neffos"
  5. gorilla "github.com/gorilla/websocket"
  6. )
  7. // DefaultUpgrader is a gorilla/websocket Upgrader with all fields set to the default values.
  8. var DefaultUpgrader = Upgrader(gorilla.Upgrader{})
  9. // Upgrader is a `neffos.Upgrader` type for the gorilla/websocket subprotocol implementation.
  10. // Should be used on `New` to construct the neffos server.
  11. func Upgrader(upgrader gorilla.Upgrader) neffos.Upgrader {
  12. return func(w http.ResponseWriter, r *http.Request) (neffos.Socket, error) {
  13. underline, err := upgrader.Upgrade(w, r, w.Header())
  14. if err != nil {
  15. return nil, err
  16. }
  17. return newSocket(underline, r, false), nil
  18. }
  19. }