Add test of websocket interface
This commit is contained in:
parent
8cd94070ce
commit
42d3ecdd41
File diff suppressed because one or more lines are too long
@ -300,6 +300,18 @@ var requestHandlers = map[string]func(*WebsocketServer, *websocketChannel, *webs
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func sendResponse(c *websocketChannel, req *websocketReq, data interface{}) {
|
||||||
|
defer func() {
|
||||||
|
if r := recover(); r != nil {
|
||||||
|
glog.Error("Client ", c.id, ", onRequest ", req.Method, " recovered from panic: ", r)
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
c.out <- &websocketRes{
|
||||||
|
ID: req.ID,
|
||||||
|
Data: data,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func (s *WebsocketServer) onRequest(c *websocketChannel, req *websocketReq) {
|
func (s *WebsocketServer) onRequest(c *websocketChannel, req *websocketReq) {
|
||||||
var err error
|
var err error
|
||||||
var data interface{}
|
var data interface{}
|
||||||
@ -313,10 +325,7 @@ func (s *WebsocketServer) onRequest(c *websocketChannel, req *websocketReq) {
|
|||||||
}
|
}
|
||||||
// nil data means no response
|
// nil data means no response
|
||||||
if data != nil {
|
if data != nil {
|
||||||
c.out <- &websocketRes{
|
sendResponse(c, req, data)
|
||||||
ID: req.ID,
|
|
||||||
Data: data,
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
t := time.Now()
|
t := time.Now()
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user