VOOZH about

URL: https://dzone.com/articles/how-to-implement-get-and-post-request-through-simp

⇱ Java: How to Implement GET and POST Requests


Related

  1. DZone
  2. Coding
  3. Java
  4. How to Implement GET and POST Requests With Java [Snippet]

How to Implement GET and POST Requests With Java [Snippet]

Want to learn more about implementing GET and POST requests in Java? Check out this code to learn how to use the GET and POST endpoints.

By Jul. 31, 18 · Code Snippet
Likes
Comment
Save
456.1K Views

Join the DZone community and get the full member experience.

Join For Free

We can call the GET or POST requests using a simple Java program. I have used "https://jsonplaceholder.typicode.com"  to make GET and POST calls. This website provides simple get/post/put/delete endpoints. For demonstration purposes, I am only using GET and POST endpoints.

We will write a main method as below :

public static void main(String[] args) throws IOException {
 GetAndPost.MyGETRequest();
 GetAndPost.MyPOSTRequest();
}


For a GET request, we can use https://jsonplaceholder.typicode.com/posts/1, which is shown below:

public static void MyGETRequest() throws IOException {
 URL urlForGetRequest = new URL("https://jsonplaceholder.typicode.com/posts/1");
 String readLine = null;
 HttpURLConnection conection = (HttpURLConnection) urlForGetRequest.openConnection();
 conection.setRequestMethod("GET");
 conection.setRequestProperty("userId", "a1bcdef"); // set userId its a sample here
 int responseCode = conection.getResponseCode();


 if (responseCode == HttpURLConnection.HTTP_OK) {
 BufferedReader in = new BufferedReader(
 new InputStreamReader(conection.getInputStream()));
 StringBuffer response = new StringBuffer();
 while ((readLine = in .readLine()) != null) {
 response.append(readLine);
 } in .close();
 // print result
 System.out.println("JSON String Result " + response.toString());
 //GetAndPost.POSTRequest(response.toString());
 } else {
 System.out.println("GET NOT WORKED");
 }

}


We will get the following output:

JSON String Result {
 "userId": 1,
 "id": 1,
 "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
 "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
}


For the post request, we will be using https://jsonplaceholder.typicode.com/posts, as shown below

public static void POSTRequest() throws IOException {



 final String POST_PARAMS = "{\n" + "\"userId\": 101,\r\n" +
 " \"id\": 101,\r\n" +
 " \"title\": \"Test Title\",\r\n" +
 " \"body\": \"Test Body\"" + "\n}";
 System.out.println(POST_PARAMS);
 URL obj = new URL("https://jsonplaceholder.typicode.com/posts");
 HttpURLConnection postConnection = (HttpURLConnection) obj.openConnection();
 postConnection.setRequestMethod("POST");
 postConnection.setRequestProperty("userId", "a1bcdefgh");
 postConnection.setRequestProperty("Content-Type", "application/json");


 postConnection.setDoOutput(true);
 OutputStream os = postConnection.getOutputStream();
 os.write(POST_PARAMS.getBytes());
 os.flush();
 os.close();


 int responseCode = postConnection.getResponseCode();
 System.out.println("POST Response Code : " + responseCode);
 System.out.println("POST Response Message : " + postConnection.getResponseMessage());

 if (responseCode == HttpURLConnection.HTTP_CREATED) { //success
 BufferedReader in = new BufferedReader(new InputStreamReader(
 postConnection.getInputStream()));
 String inputLine;
 StringBuffer response = new StringBuffer();

 while ((inputLine = in .readLine()) != null) {
 response.append(inputLine);
 } in .close();

 // print result
 System.out.println(response.toString());
 } else {
 System.out.println("POST NOT WORKED");
 }
}


Then, we will get the below output:

"userId": 101,
 "id": 101,
 "title": "Test Title",
 "body": "Test Body"
}
POST Response Code : 201
POST Response Message : Created
{ "userId": 101, "id": 101, "title": "Test Title", "body": "Test Body"}


I have used the below imports from java.net.* packages:

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.OutputStream;

import java.io.OutputStreamWriter;

import java.net.HttpURLConnection;

import java.net.MalformedURLException;

import java.net.ProtocolException;

import java.net.URL;


We can also verify the same from the POSTMAN console :

1. For the GET request: 

2. POST request: 

Hope this helps. Happy Coding!!

POST (HTTP) Requests Java (programming language)

Opinions expressed by DZone contributors are their own.

Related

  • Streamlining Your Workflow With the Jenkins HTTP Request Plugin: A Guide to Replacing CURL in Scripts
  • How To Create a Stub in 5 Minutes
  • Commonly Occurring Errors in Microsoft Graph Integrations and How to Troubleshoot Them (Part 3)
  • Coordinating Threads Using CountDownLatch

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

Let's be friends: