查看传入的连接、套接字和java
目前,我使用这段代码来启动java服务器,并允许连接到它查看传入的连接、套接字和java,java,sockets,Java,Sockets,目前,我使用这段代码来启动java服务器,并允许连接到它 ServerSocket serverSocket = new ServerSocket(8000) Socket socket = serverSocket.accept(); DataInputStream inputFromClient = new DataInputStream(socket.getInputStream()); DataOutputStream outputToC
ServerSocket serverSocket = new ServerSocket(8000)
Socket socket = serverSocket.accept();
DataInputStream inputFromClient = new DataInputStream(socket.getInputStream());
DataOutputStream outputToClient = new DataOutputStream(socket.getOutputStream());
我想知道如何从客户端查看到服务器的所有连接。表示已连接的ip地址,以及有关传入连接的所有信息
谢谢每次客户端连接时,请在服务器上记录客户端的ip地址等,然后让客户端向服务器发送消息,例如“获取客户端”。当服务器套接字在datainputstream上读取此字符串时,请在每次客户端连接时将客户端列表和信息发送回服务器,并在服务器上记录客户端ip地址等,然后让客户端向服务器发送消息,例如“获取客户端”。当服务器套接字在datainputstream上读取此字符串时,请将客户端列表和信息发送回我明白了,是否可以因为当前用户的ip地址而断开连接?您可以只使用socket.close()但如果有15个ip地址连接到服务器,我是否可以为单个ip地址而不是全部ip地址执行此操作?是,不要关闭serverSocket,您希望在客户端连接时保留每个套接字的列表(ArrayList通常是最简单的),然后您可以说-for(sockets s:socketArray){if(s.getInetAddress()==TheineAddressToDelete)s.close;}谢谢ghostbust555!另一个简短的问题。。。你能想到为什么我可以从同一个网络连接到我的服务器套接字,但不能从另一个网络连接到我的服务器套接字吗?(从同一个网络,我使用网络IP 192.168…..但从另一个网络,我使用实际的internet IP)我明白了,有可能因为当前用户的IP地址而断开他们的连接吗?您可以使用socket.close()但如果有15个IP地址连接到服务器,我可以为单个IP地址而不是全部IP地址断开连接吗?是的,不要关闭serverSocket,您希望在客户端连接时保留每个套接字的列表(ArrayList通常是最简单的),然后您可以说-for(sockets s:socketArray){if(s.getInetAddress()==TheineAddressToDelete)s.close;}谢谢ghostbust555!另一个简短的问题。。。你能想到为什么我可以从同一个网络连接到我的服务器套接字,但不能从另一个网络连接到我的服务器套接字吗?(从同一个网络我使用网络IP 192.168…..但从另一个网络我使用实际的互联网IP)我想知道这是您的全部代码还是一个片段。这段代码只适用于1个客户端,对吗?您需要在一个单独的线程上为每个客户机提供服务。我想知道这是您的全部代码还是一个片段。这段代码只适用于1个客户端,对吗?您需要在单独的线程上为每个客户机提供服务。