Commit ab41ee07 authored by Chunchi Che's avatar Chunchi Che

fix bufio cache bug

parent 6368e27a
...@@ -37,7 +37,7 @@ func ygoEndpoint(w http.ResponseWriter, r *http.Request) { ...@@ -37,7 +37,7 @@ func ygoEndpoint(w http.ResponseWriter, r *http.Request) {
tcp, err := net.Dial("tcp", "127.0.0.1"+PROXY_PORT) tcp, err := net.Dial("tcp", "127.0.0.1"+PROXY_PORT)
if err != nil { if err != nil {
log.Fatal("connect tcp server error: ", err) log.Fatal("Connect tcp server error: ", err)
} }
log.Println("Tcp connected") log.Println("Tcp connected")
...@@ -51,12 +51,10 @@ func ygoEndpoint(w http.ResponseWriter, r *http.Request) { ...@@ -51,12 +51,10 @@ func ygoEndpoint(w http.ResponseWriter, r *http.Request) {
} }
func wsProxy(ws *websocket.Conn, tcp *net.Conn, wg *sync.WaitGroup) { func wsProxy(ws *websocket.Conn, tcp *net.Conn, wg *sync.WaitGroup) {
writer := bufio.NewWriter(*tcp)
for { for {
messageType, buffer, err := ws.ReadMessage() messageType, buffer, err := ws.ReadMessage()
if err != nil { if err != nil {
log.Println("websocket read message error: ", err) log.Println("Websocket read message error: ", err)
break break
} }
...@@ -71,9 +69,9 @@ func wsProxy(ws *websocket.Conn, tcp *net.Conn, wg *sync.WaitGroup) { ...@@ -71,9 +69,9 @@ func wsProxy(ws *websocket.Conn, tcp *net.Conn, wg *sync.WaitGroup) {
break break
} }
_, err = writer.Write(buffer) _, err = (*tcp).Write(buffer)
if err != nil { if err != nil {
log.Fatal("websocket send message error: ", err) log.Fatal("Tcp send message error: ", err)
break break
} }
} }
...@@ -92,7 +90,7 @@ func tcpProxy(tcp *net.Conn, ws *websocket.Conn, wg *sync.WaitGroup) { ...@@ -92,7 +90,7 @@ func tcpProxy(tcp *net.Conn, ws *websocket.Conn, wg *sync.WaitGroup) {
continue continue
} }
log.Println("tcp read message error: ", err) log.Println("Tcp read message error: ", err)
break break
} }
...@@ -104,7 +102,7 @@ func tcpProxy(tcp *net.Conn, ws *websocket.Conn, wg *sync.WaitGroup) { ...@@ -104,7 +102,7 @@ func tcpProxy(tcp *net.Conn, ws *websocket.Conn, wg *sync.WaitGroup) {
err = ws.WriteMessage(websocket.BinaryMessage, buffer) err = ws.WriteMessage(websocket.BinaryMessage, buffer)
if err != nil { if err != nil {
log.Fatal("tcp send message error: ", err) log.Fatal("Websocket send message error: ", err)
break break
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment