fix(server): change connection method from one-time to full-time
This commit is contained in:
@@ -3,8 +3,10 @@ package socket
|
||||
import (
|
||||
"Watchdog_Linux-systemd/command"
|
||||
"Watchdog_Linux-systemd/postLog"
|
||||
"bufio"
|
||||
"fmt"
|
||||
"net"
|
||||
"strings"
|
||||
)
|
||||
|
||||
func BootSocket(networkType, listenAddr string, listenPort int) error {
|
||||
@@ -29,16 +31,19 @@ func BootSocket(networkType, listenAddr string, listenPort int) error {
|
||||
func handleRequest(conn net.Conn) {
|
||||
defer conn.Close()
|
||||
|
||||
buffer := make([]byte, 1024)
|
||||
n, err := conn.Read(buffer)
|
||||
reader := bufio.NewReader(conn)
|
||||
|
||||
for {
|
||||
data, err := reader.ReadBytes('\n')
|
||||
if err != nil {
|
||||
postLog.Error(fmt.Sprintf("Failed to read: %v, err: %v", conn, err))
|
||||
return
|
||||
}
|
||||
|
||||
recvMsg := string(buffer[:n])
|
||||
postLog.Debug(fmt.Sprintf("Received: %v", recvMsg))
|
||||
recvMsg := strings.TrimSpace(string(data))
|
||||
|
||||
responseMsg := ""
|
||||
if len(recvMsg) != 0 {
|
||||
postLog.Debug(fmt.Sprintf("Received message: %s", recvMsg))
|
||||
if recvMsg == "watchdogAgentConnectionTest" {
|
||||
responseMsg = "success"
|
||||
} else {
|
||||
@@ -49,7 +54,8 @@ func handleRequest(conn net.Conn) {
|
||||
responseMsg = "success"
|
||||
}
|
||||
}
|
||||
if _, err := conn.Write([]byte(responseMsg + "\n")); err != nil {
|
||||
postLog.Error(fmt.Sprintf("Failed to write: %v, err: %v", conn, err))
|
||||
}
|
||||
|
||||
conn.Write([]byte(responseMsg + "\n"))
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user