1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStreamReader;
  4. import java.net.HttpURLConnection;
  5. import java.net.URL;
  6. public class RequestConverter {
  7. public static void main(String[] args) {
  8. String requestType = args[0]; // GET, POST, PUT, DELETE
  9. String url = args[1]; // URL to request
  10. String requestBody = args[2]; // Request body (for POST, PUT)
  11. try {
  12. HttpURLConnection connection = makeRequest(requestType, url, requestBody);
  13. printResponse(connection);
  14. } catch (IOException e) {
  15. System.err.println("Error: " + e.getMessage());
  16. } finally {
  17. if (connection != null) {
  18. connection.disconnect();
  19. }
  20. }
  21. }
  22. private static HttpURLConnection makeRequest(String requestType, String url, String requestBody) throws IOException {
  23. URL u = new URL(url);
  24. HttpURLConnection connection = (HttpURLConnection) u.openConnection();
  25. connection.setInstance(HttpURLConnection.HTTP_BROWSER); //For non-production
  26. switch (requestType.toUpperCase()) {
  27. case "GET":
  28. connection.connect(); // Connect for GET requests
  29. break;
  30. case "POST":
  31. connection.setDoOutput(true);
  32. connection.setDoInput(true);
  33. connection.setRequestMethod("POST");
  34. if (requestBody != null && !requestBody.isEmpty()) {
  35. connection.getOutputStream().write(requestBody.getBytes());
  36. }
  37. break;
  38. case "PUT":
  39. connection.setDoOutput(true);
  40. connection.setDoInput(true);
  41. connection.setRequestMethod("PUT");
  42. if (requestBody != null && !requestBody.isEmpty()) {
  43. connection.getOutputStream().write(requestBody.getBytes());
  44. }
  45. break;
  46. case "DELETE":
  47. connection.setRequestMethod("DELETE");
  48. break;
  49. default:
  50. throw new IllegalArgumentException("Invalid request type: " + requestType);
  51. }
  52. return connection;
  53. }
  54. private static void printResponse(HttpURLConnection connection) throws IOException {
  55. BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
  56. StringBuilder response = new StringBuilder();
  57. String line;
  58. while ((line = reader.readLine()) != null) {
  59. response.append(line).append("\n");
  60. }
  61. System.out.println(response.toString());
  62. }
  63. }

Add your comment