http要求メッセージをサーバーに送信するにはクライアントが必要ですが、http 1.1を使用してUDPで行う方法はわかりませんJavaでUDP接続を持つサーバーにHTTP要求メッセージを送信するようにクライアントをプログラミングする
メソッドフィールドには特定の単語、URLフィールドには特定の名前、バージョンフィールドには特定の整数が必要です。
したがって、メソッドフィールドに "inform"、urlフィールドに "host1"、バージョンフィールドに40000を持つhttp要求メッセージを送信するにはどうしたらよいですか?
これは私が今使っているものですが、httpを使わないので変更方法はわかりません。
BufferedReader inFromUser = new BufferedReader(new InputStreamReader(System.in));
DatagramSocket clientSocket = new DatagramSocket();
InetAddress IPAddress = InetAddress.getByName("THIS-PC");
byte[] sendData = new byte[128];
byte[] receiveData = new byte[128];
System.out.println("Enter:");
String request ="INFORM ";
String sentence = inFromUser.readLine();
// request.concat("/r/n");
request.concat(sentence);
// request.concat("/r/n");
sendData = sentence.getBytes();
DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, IPAddress, 40075);
clientSocket.send(sendPacket);
System.out.println("Packet sent");
DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length);
clientSocket.receive(receivePacket);
System.out.println("Packet received");
String reply = new String(receivePacket.getData());
System.out.println("FROM SERVER:" + reply);
clientSocket.close();
本当に* UDP経由でHTTPを送信しますか?または、HTTPを標準的な方法(TCP/IP経由)で使用したいだけですか? – BalusC
HTTPには信頼できる転送が必要です。 UDPは信頼できるトランスポートではありません。 UDP over HTTPは使用できません。 HTTP over UDPのようなものを使用することができます。実際に何をしようとしていますか? –
UDP経由でHTTPを送信する目的を説明できますか?あなたのサーバは、順序の乱れたパケットなどを処理する必要があるため、私にとっては大きな頭痛のように聞こえます。 –