Skip to main content

How to Unirest HTTP API Requests Call in Java

Unirest is a set of lightweight HTTP libraries available in multiple languages, built and maintained by Mashape, who also maintain the open-source API Gateway Kong.

Do yourself a favor, and start making HTTP requests like this:

Creating Function :
    /**
     * Unirest API call return jsonResponse handle
     * Function Name: ApiCallFunction
     * @param vEmail, Url
     * @return status
     */
    public static String ApiCallFunction(String vEmail, String Url) {
        try{
            HttpResponse<JsonNode> jsonResponse = Unirest.post(Url)
            .field("vEmail",vEmail)
            .asJson();
            JSONObject output= jsonResponse.getBody().getObject();
   String status= output.getString("status");
            return status;
        }catch(UnirestException e){
           return "error";
        }
        
    }
Type Of  Response Handle:
// Response to String
Sting bookResponse = Unirest.get(Url).asString();

//Response Basic Authentication
HttpResponse<JsonNode> jsonResponse = Unirest.get(Url).basicAuth("username", "password").asJson();
JSONObject output= jsonResponse.getBody().getObject();

//Response Object to Json
HttpResponse<JsonNode> jsonResponse = Unirest.post(Url)
        .header("accept", "application/json")
        .header("Content-Type", "application/json")
        .body(authorObject)
        .asJson();
JSONObject output= jsonResponse.getBody().getObject();
  
// Response to Object
HttpResponse<Book> bookResponse = Unirest.get(Url).asObject(Book.class);
Book bookObject = bookResponse.getBody();

// Response to Author
HttpResponse<Author> authorResponse = Unirest.get(Url)
    .routeParam("id", bookObject.getId())
    .asObject(Author.class);

Author authorObject = authorResponse.getBody();

Response :
Upon recieving a response Unirest returns the result in the form of an Object, this object should always have the same keys for each language regarding to the response details.

  • getStatus() - HTTP Response Status Code (Example: 200)
  • getStatusText() - HTTP Response Status Text (Example: "OK")
  • getHeaders() - HTTP Response Headers
  • getBody() - Parsed response body where applicable, for example JSON responses are parsed to Objects / Associative Arrays.
  • getRawBody() - Un-parsed response body








Comments

Popular posts from this blog

Java Loops II print each element of our series as a single line of space-separated values.

We use the integers  ,  , and   to create the following series: You are given   queries in the form of  ,  , and  . For each query, print the series corresponding to the given  ,  , and   values as a single line of   space-separated integers. Input Format The first line contains an integer,  , denoting the number of queries.  Each line   of the   subsequent lines contains three space-separated integers describing the respective  ,  , and   values for that query. Constraints Output Format For each query, print the corresponding series on a new line. Each series must be printed in order as a single line of   space-separated integers. Sample Input 2 0 2 10 5 3 5 Sample Output 2 6 14 30 62 126 254 510 1022 2046 8 14 26 50 98 Explanation We have two queries: We use  ,  , and   to produce some series  : ... and so on. Once we hit  , we print the first ten terms as a single line of space-separate

Java Currency Formatter Solution

Given a  double-precision  number,  , denoting an amount of money, use the  NumberFormat  class'  getCurrencyInstance  method to convert   into the US, Indian, Chinese, and French currency formats. Then print the formatted values as follows: US: formattedPayment India: formattedPayment China: formattedPayment France: formattedPayment where   is   formatted according to the appropriate  Locale 's currency. Note:  India does not have a built-in Locale, so you must  construct one  where the language is  en  (i.e., English). Input Format A single double-precision number denoting  . Constraints Output Format On the first line, print  US: u  where   is   formatted for US currency.  On the second line, print  India: i  where   is   formatted for Indian currency.  On the third line, print  China: c  where   is   formatted for Chinese currency.  On the fourth line, print  France: f , where   is   formatted for French currency. Sample

Java Substring Comparisons

We define the following terms: Lexicographical Order , also known as  alphabetic  or  dictionary  order, orders characters as follows:  For example,  ball < cat ,  dog < dorm ,  Happy < happy ,  Zoo < ball . A  substring  of a string is a contiguous block of characters in the string. For example, the substrings of  abc  are  a ,  b ,  c ,  ab ,  bc , and  abc . Given a string,  , and an integer,  , complete the function so that it finds the lexicographically  smallest  and  largest substrings of length  . Input Format The first line contains a string denoting  . The second line contains an integer denoting  . Constraints  consists of English alphabetic letters only (i.e.,  [a-zA-Z] ). Output Format Return the respective lexicographically smallest and largest substrings as a single newline-separated string. Sample Input 0 welcometojava 3 Sample Output 0 ava wel Explanation 0 S