服务器如何获取客户端的端口号?

public static void main(String[] args) {
		// admitAddressList = new ArrayList<Socket>();
		try {
			ServerSocket socket = new ServerSocket(54324);
			while(true){
				
				Socket accept = socket.accept();
			//	admitAddressList.add(accept);
				new ServerThread(accept).start();
				System.out.println(accept.getLocalPort());
				System.out.println("客户端接入");
				
			}
			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

这是服务器,每次客户端接入都会显示客户端的端口号,不是应该这么写吗?但是为什么我同时接入多个客户端的时候,返回的总是服务器的端口值,请问我的问题出在了哪里http://img.mukewang.com/57ae9b8a0001dba201050138.jpg

慕粉3635750
浏览 2443回答 1
1回答

摩诃迦叶

调用的方法错了。 getLocalPort()返回的就是服务器的端口号。  你将accept.getLocalPort()换成accept.getPort()就对了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java