为了账号安全,请及时绑定邮箱和手机立即绑定

EchoServer(Java)不将消息返回给客户端(golang)

EchoServer(Java)不将消息返回给客户端(golang)

Go
FFIVE 2021-09-13 15:13:05
我正在尝试创建一个 TCP 客户端(golang)服务器(Java)应用程序,客户端在其中写入,服务器回显此文本并将消息返回给客户端,客户端随后回显回复。服务器代码(Java):public static void main(String[] args) throws Exception {    int port = 4444;    ServerSocket serverSocket = new ServerSocket(port);    System.err.println("Started server on port " + port);    while (true) {        Socket clientSocket = serverSocket.accept();        System.err.println("Accepted connection from client");        BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));        PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);        String s;        while ((s = in.readLine()) != null) {            out.println(s);            System.out.println(s);        }        System.err.println("Closing connection with client");        out.close();        in.close();        clientSocket.close();    }}客户端代码(golang):package mainimport (    "net"    "os")func main() {    strEcho := "Hello"    servAddr := "localhost:4444"    tcpAddr, err := net.ResolveTCPAddr("tcp", servAddr)    if err != nil {        println("ResolveTCPAddr failed:", err.Error())        os.Exit(1)    }    conn, err := net.DialTCP("tcp", nil, tcpAddr)    if err != nil {        println("Dial failed:", err.Error())        os.Exit(1)    }    _, err = conn.Write([]byte(strEcho))    if err != nil {        println("Write to server failed:", err.Error())        os.Exit(1)    }    println("write to server = ", strEcho)    reply := make([]byte, 1024)    _, err = conn.Read(reply)    if err != nil {        println("Write to server failed:", err.Error())        os.Exit(1)    }    println("reply from server=", string(reply))    conn.Close()}当我启动 Java 服务器,然后运行 Go 应用程序时,服务器说连接已被接受(即“接受来自客户端的连接”)但从未将回声返回给客户端。客户端停在“写入服务器 = Hello”,即写入服务器工作正常,但读回客户端没有。知道为什么会这样吗?
查看完整描述

1 回答

?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

尝试发送一个换行符来匹配readLine服务器端的语句

strEcho := "Hello\n"


查看完整回答
反对 回复 2021-09-13
  • 1 回答
  • 0 关注
  • 144 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信