File tree Expand file tree Collapse file tree 1 file changed +20
-1
lines changed Expand file tree Collapse file tree 1 file changed +20
-1
lines changed Original file line number Diff line number Diff line change 9
9
"sync"
10
10
11
11
"github.com/coder/websocket"
12
+
13
+ "flowey/db"
12
14
)
13
15
14
16
type connection struct {
@@ -69,9 +71,26 @@ func (handler *wsHandler) handle(writer http.ResponseWriter, request *http.Reque
69
71
}
70
72
71
73
func (handler * wsHandler ) ServeHTTP (writer http.ResponseWriter , request * http.Request ) {
74
+ sessionKey , err := request .Cookie (sessionKeyCookieName )
75
+ if err != nil {
76
+ writer .WriteHeader (http .StatusUnauthorized )
77
+ return
78
+ }
79
+
80
+ err = db .Authorize (sessionKey .Value )
81
+ if err != nil {
82
+ switch err {
83
+ case db .Unathorized :
84
+ writer .WriteHeader (http .StatusUnauthorized )
85
+ case db .InternalServerError :
86
+ writer .WriteHeader (http .StatusInternalServerError )
87
+ }
88
+ return
89
+ }
90
+
72
91
handler .waitGroup .Add (1 )
73
92
74
- err : = handler .handle (writer , request )
93
+ err = handler .handle (writer , request )
75
94
if err != nil {
76
95
log .Println (err )
77
96
return
You can’t perform that action at this time.
0 commit comments