mirror of
https://github.com/OliveTin/OliveTin
synced 2026-08-28 21:46:37 +00:00
feature: websocket wip
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
package httpservers
|
||||
|
||||
import (
|
||||
"time"
|
||||
log "github.com/sirupsen/logrus"
|
||||
"net/http"
|
||||
"nhooyr.io/websocket"
|
||||
)
|
||||
|
||||
func handleWebsocket(w http.ResponseWriter, r *http.Request) {
|
||||
c, err := websocket.Accept(w, r, nil)
|
||||
|
||||
if err != nil {
|
||||
Log.Warnf("Websocket issue: %v", err)
|
||||
return
|
||||
}
|
||||
|
||||
defer c.Close(websocket.StatusInternalError, "Goodbye")
|
||||
|
||||
ctx, cancel := context.WithTimeout(r.Context(), time.Second*10)
|
||||
|
||||
defer cancel()
|
||||
|
||||
var v interface{}
|
||||
|
||||
err = wsjson.Read(Ctx, c, v)
|
||||
|
||||
if err != nil {
|
||||
Log.Warnf("Websocket issue: %v", err)
|
||||
return
|
||||
}
|
||||
|
||||
log.Printf("recv: %v", v)
|
||||
|
||||
c.Close(websocket.StatusNormalClosure, "")
|
||||
}
|
||||
Reference in New Issue
Block a user