简体   繁体   English

如何从Netty服务器向套接字客户端发送字符串

[英]How send string from Netty server to socket client

I have a simple netty socket server and simple client with standart socket implementation(no netty). 我有一个简单的netty套接字服务器和带有标准套接字实现(没有netty)的简单客户端。 from client to server I can send string via PrintWriter toServer = new PrintWriter(client.getOutputStream(), true); 从客户端到服务器,我可以通过PrintWriter toServer = new PrintWriter(client.getOutputStream(), true);发送字符串到PrintWriter toServer = new PrintWriter(client.getOutputStream(), true); and in client I have BufferedReader fromServer = new BufferedReader(new InputStreamReader(client.getInputStream())); 在客户端中,我有BufferedReader fromServer = new BufferedReader(new InputStreamReader(client.getInputStream())); . in Server side I have this code 在服务器端,我有此代码

@Override
protected void channelRead0(ChannelHandlerContext ctx, String message) throws Exception {
  String msg = message;
  String response = "Response from server";
  try {
   System.out.println(msg);
   System.out.flush();
   ctx.writeAndFlush(response);
  } finally {
      ReferenceCountUtil.retain(msg);
  }
}

But I can't read any string in client side from server. 但是我无法从服务器读取客户端的任何字符串。 How I can send string from netty to client in right way? 如何以正确的方式将字符串从netty发送到客户端? client side: 客户端:

toServer = new PrintWriter(client.getOutputStream(), true);
fromServer = new BufferedReader(new InputStreamReader(client.getInputStream()));

for (int i = 0; i < 6; i++) {
    toServer.println("simple string: " + i);
    if ((line = fromServer.readLine()) != null) {
        System.out.println("Responce from server: " + line);
    }
}

Try this: 尝试这个:

ctx.channel().writeAndFlush(Unpooled.copiedBuffer(response.getBytes()));

Letme know if works. 让我知道是否可行。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 将字符串消息从Netty客户端发送到服务器 - Send a String message from my Netty client to my server 如何使用Netty从服务器向客户端发送确认? - How to send acknowledgment from server to client using netty? 如何在Java中将ISO消息对象从客户端发送到Netty服务器 - How to send ISO message Object from client to Netty server in java 如何使用字符串编码器和解码器使Java客户端代码将数据发送到Netty4套接字? - How to make a java client code to send data to a Netty4 socket with String encoders and decoders? 如何使用 Socket.IO-client Java 从 Android 向服务器发送 String 消息? - How send String message to server from Android with Socket.IO-client Java? netty 4如何从服务器发送消息 - netty 4 How to send message from server 从自定义Netty服务器发送“ MOTD”到Minecraft客户端 - Send “MOTD” to Minecraft client from custom Netty server 从tcp客户端发送到netty服务器数据,Bytebuf readInt如何工作 - send from tcp client to netty server data , How Bytebuf readInt work Java Communication Netty服务器-套接字客户端 - Java Communication netty server - Socket client Netty服务器发送Protobuf编码的byte [],但C#客户端Socket.Receive始终为0 - Netty server send a byte[] encoded by Protobuf, but C# client Socket.Receive keeps being 0
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM