我開發了一個簡單的視頻遊戲,我想用多人功能使用websockets進行更新。我想要有兩個版本的遊戲。第一個用作服務器,另一個用作客戶端。我想從服務器初始化遊戲並等待客戶端的反應。我的第一個問題:是否有可能在同一臺機器上運行服務器和客戶端(給出相同的IP作爲輸入)?其次我使用,以便將下面的代碼創建一個從服務器端的插口:與java中的服務器和客戶端websockets進行通信
try {
serverSocket = new ServerSocket(10007);
}
catch (IOException e)
{
System.err.println("Could not listen on port: 10007.");
System.exit(1);
}
System.out.println ("Waiting for connection.....");
try {
clientSocket = serverSocket.accept();
}
catch (IOException e)
{
System.err.println("Accept failed.");
System.exit(1);
}
System.out.println ("Connection successful");
當我試圖從客戶端連接,似乎整個事情它不工作,因爲我收到消息waiting for connection...
。我的代碼連接客戶端如下:
String serverHostname = new String("ip");
if (args.length > 0)
serverHostname = args[0];
System.out.println("Attemping to connect to host " +
serverHostname + " on port 10007.");
Socket echoSocket = null;
PrintWriter out = null;
BufferedReader in = null;
try {
echoSocket = new Socket(serverHostname, 10007);
out = new PrintWriter(echoSocket.getOutputStream(), true);
in = new BufferedReader(new InputStreamReader(
echoSocket.getInputStream()));
} catch (UnknownHostException e) {
System.err.println("Don't know about host: " + serverHostname);
System.exit(1);
} catch (IOException e) {
System.err.println("Couldn't get I/O for "
+ "the connection to: " + serverHostname);
System.exit(1);
}
這是什麼問題在這裏?
你的意思是[WebSocket](https://tools.ietf.org/html/rfc6455)? –