Ich bin neu in Java-Sockets, ich versuche, eine einfache UDP-Übertragung mit Client-Server zu erstellen. Mein Problem ist jetzt, dass der Server die Endlosschleife ausführt und keine Nachricht an den Client sendet. Sorry, wenn ich habe einige dumme Fehler, dankJava-Sockets UDP bidirektional mit Datagramm
Server:
import java.net.*;
import java.util.*;
class EchoServer {
public static void main(String args[]) throws Exception {
DatagramSocket socket = new DatagramSocket(54373);
DatagramPacket packet = new DatagramPacket(new byte[512],512);
String temp = "Hello client";
byte[] buffer = temp.getBytes();
while (true) {
socket.receive(packet);
System.out.println("Received from client");
DatagramPacket packet2 = new DatagramPacket(buffer,buffer.length,InetAddress.getByName("127.0.0.1"),54373);
socket.send(packet2);
}
}
}
Auftraggeber:
import java.net.*;
import java.util.*;
class EchoClient {
public static void main(String args[]) throws Exception {
DatagramSocket socket = new DatagramSocket();
socket.setSoTimeout(5000);
byte[] buffer = "Hello Server".getBytes();
DatagramPacket packet = new DatagramPacket(buffer,buffer.length,InetAddress.getByName("127.0.0.1"),54373);
socket.send(packet);
DatagramPacket packet2 = new DatagramPacket(new byte[512],512);
socket.receive(packet2);
System.out.println("Received from server");
}
}
aber mein Server ist in der Lage das Original "Paket" statt Paket2 zu senden