[英]How do I connect two clients P2P over the internet. Using java web server
[英]How to connect server from client in java over internet?
我已經在Java服務器和客戶端中創建了兩個程序,我通過localhost連接,但是我想從世界各地通過Internet連接客戶端。
public class Client {
public static void main(String[] args) throws UnknownHostException, IOException {
Socket socket = new Socket("localhost", 1234);
OutputStream outputStream = socket.getOutputStream();
DataOutputStream dataOutputStream = new DataOutputStream(outputStream);
dataOutputStream.writeInt(Integer.parseInt(args[0]));
InputStream inputStream = socket.getInputStream();
DataInputStream dataInputStream = new DataInputStream(inputStream);
System.out.println(dataInputStream.readUTF());
}
}
public class Server {
public static void main(String[] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(1234);
while(true) {
Socket socket = serverSocket.accept();
InputStream inputStream = socket.getInputStream();
DataInputStream dataInputStream = new DataInputStream(inputStream);
int a = dataInputStream.readInt();
OutputStream outputStream = socket.getOutputStream();
DataOutputStream dataOutputStream = new DataOutputStream(outputStream);
if(a == 1698)
dataOutputStream.writeUTF("Welcome Salman");
else if(a == 1700)
dataOutputStream.writeUTF("Welcome Wajeh");
else if(a == 1694)
dataOutputStream.writeUTF("Welcome Farhan");
else
dataOutputStream.writeUTF("Wrong Roll No");
}
}
}
與您的瀏覽器連接至SO的方式相同,您應該獲取服務器的IP地址並連接至服務器,這可以通過DNS來完成。
您可以通過替換該行的參數來做到這一點:
Socket socket = new Socket("localhost", 1234);
進入服務器的公共IP地址和運行應用程序的端口。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.