|
@@ -8,31 +8,23 @@ import (
|
|
|
"one.com/nnet"
|
|
"one.com/nnet"
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
-var (
|
|
|
|
|
-// upgrader = websocket.Upgrader{
|
|
|
|
|
-// ReadBufferSize: 4096,
|
|
|
|
|
-// WriteBufferSize: 4096,
|
|
|
|
|
-// CheckOrigin: func(r *http.Request) bool {
|
|
|
|
|
-// return true
|
|
|
|
|
-// },
|
|
|
|
|
-// }
|
|
|
|
|
-)
|
|
|
|
|
-
|
|
|
|
|
type CallbackWsPath func(http.ResponseWriter, *http.Request)
|
|
type CallbackWsPath func(http.ResponseWriter, *http.Request)
|
|
|
|
|
|
|
|
type WsServer struct {
|
|
type WsServer struct {
|
|
|
*Hub
|
|
*Hub
|
|
|
addr string
|
|
addr string
|
|
|
|
|
+ wspath string
|
|
|
svr *http.Server
|
|
svr *http.Server
|
|
|
upgrader *websocket.Upgrader
|
|
upgrader *websocket.Upgrader
|
|
|
routes map[string]CallbackWsPath
|
|
routes map[string]CallbackWsPath
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
func NewWsServer(cf *nnet.HubConfig, cb nnet.ISessionCallback, p nnet.IProtocol,
|
|
func NewWsServer(cf *nnet.HubConfig, cb nnet.ISessionCallback, p nnet.IProtocol,
|
|
|
- addr string, routes map[string]CallbackWsPath) *WsServer {
|
|
|
|
|
|
|
+ addr string, wspath string, routes map[string]CallbackWsPath) *WsServer {
|
|
|
return &WsServer{
|
|
return &WsServer{
|
|
|
- Hub: newHub(cf, cb, p),
|
|
|
|
|
- addr: addr,
|
|
|
|
|
|
|
+ Hub: newHub(cf, cb, p),
|
|
|
|
|
+ addr: addr,
|
|
|
|
|
+ wspath: wspath,
|
|
|
upgrader: &websocket.Upgrader{
|
|
upgrader: &websocket.Upgrader{
|
|
|
ReadBufferSize: cf.ReadBufSize,
|
|
ReadBufferSize: cf.ReadBufSize,
|
|
|
WriteBufferSize: cf.WriteBufSize,
|
|
WriteBufferSize: cf.WriteBufSize,
|
|
@@ -50,7 +42,7 @@ func (self *WsServer) Start() error {
|
|
|
router.HandleFunc(k, v)
|
|
router.HandleFunc(k, v)
|
|
|
}
|
|
}
|
|
|
router.HandleFunc("/", self.do_homepage)
|
|
router.HandleFunc("/", self.do_homepage)
|
|
|
- router.HandleFunc("/kg", func(w http.ResponseWriter, r *http.Request) {
|
|
|
|
|
|
|
+ router.HandleFunc(self.wspath, func(w http.ResponseWriter, r *http.Request) {
|
|
|
self.do_new_session(w, r)
|
|
self.do_new_session(w, r)
|
|
|
})
|
|
})
|
|
|
self.svr = &http.Server{
|
|
self.svr = &http.Server{
|
|
@@ -70,7 +62,7 @@ func (self *WsServer) do_homepage(w http.ResponseWriter, r *http.Request) {
|
|
|
http.Error(w, "Method now allowed", http.StatusMethodNotAllowed)
|
|
http.Error(w, "Method now allowed", http.StatusMethodNotAllowed)
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
- w.Write([]byte("welcome"))
|
|
|
|
|
|
|
+ w.Write([]byte("welcome to nnet v" + nnet.VERSION))
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
func (self *WsServer) do_new_session(w http.ResponseWriter, r *http.Request) {
|
|
func (self *WsServer) do_new_session(w http.ResponseWriter, r *http.Request) {
|