如果我有一个如下配置的服务器监听端口 80 和 8080,当我收到消息时,我如何能够识别客户端连接到哪个本地端口?
acceptor = new NioSocketAcceptor();
acceptor.setHandler(new MyConnectionHandler());
Set<SocketAddress> addresses = new HashSet<SocketAddress>();
addresses.add(new InetSocketAddress(host, 80));
addresses.add(new InetSocketAddress(host, 8080));
acceptor.bind(addresses);
处理程序的messageReceived我想知道客户端连接到哪个本地端口,而不是客户端的远程端口。
@Override
public void messageReceived(IoSession session, Object message) throws Exception {
log.info("Incomming: {}", session.getRemoteAddress().toString());
我应该使用哪种方法访问应该是 80 或 8080 的端口?日志语句将打印如下内容:
Incomming: /219.182.172.12:37921