我想根据后端进程向客户端
发送多个响应。但在 Netty 示例中,我看到 echo 服务器同时发回响应。
我的要求是,我需要验证客户端并向他发送 OK 响应,然后在可用时向他发送 DB
更新。
如何向客户端
发送更多响应
?请指导我查看示例或任何指南?
最佳答案
在管道中的每个点,您都可以获得管道 Channel来自 MessageEvent 的对象对象(或 ChannelEvent )从处理程序传递到处理程序。您可以使用此信息在管道中的不同点发送多个响应。
如果我们以回显服务器示例为基础,我们可以添加一个再次发送回显的处理程序(也可以在同一个处理程序中完成,但该示例是为了表明多个处理程序可以响应)。
public class EchoServerHandler extends ChannelHandlerAdapter {
public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) {
Channel ch = e.getChannel();
// first message
ch.write(e.getMessage());
}
// ...
}
public class EchoServerHandler2 extends ChannelHandlerAdapter {
public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) {
Channel ch = e.getChannel();
// send second message
ch.write(e.getMessage());
}
// ...
}
关于java - 如何从 Netty 向客户端发送多个响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21273887/