Class KHTTPClient

java.lang.Object
ch.k43.util.KHTTPClient

public class KHTTPClient extends Object
Support basic HTTP/HTTPS client transactions.

Note: The request headers "Date", "User-Agent", "Host" and "Content-Length" are automatically added.

 Example:
 
 KHTTPClient http = new KHTTPClient();
              
 if (!http.get("https://reqbin.com/echo/get/json")) {
    KLog.error("Error: {}", http.getLastError());
 } else {
    System.out.println(http.getResponseDataAsString());
 }
 
  • Constructor Details Link icon

    • KHTTPClient Link icon

      public KHTTPClient()
      Class constructor.
  • Method Details Link icon

    • delete Link icon

      public boolean delete(String argURL, Properties argHeaders)
      Execute HTTP DELETE request.
      Parameters:
      argURL - URL to connect
      argHeaders - Additional HTTP request headers or null
      Returns:
      True (if HTTP return code 200), else false
      Since:
      2024.05.22
    • get Link icon

      public boolean get(String argURL)
      Execute HTTP GET request.
      Parameters:
      argURL - URL to connect
      Returns:
      True if HTTP return code is 200, false otherwise
    • get Link icon

      public boolean get(String argURL, Properties argHeaders)
      Execute HTTP GET request and set HTTP request headers.
      Parameters:
      argURL - URL to connect
      argHeaders - Additional HTTP request headers or null
      Returns:
      True if HTTP return code is 200 else false
    • getLastError Link icon

      public String getLastError()
      Return last error message.
      Returns:
      Last error message or null
    • getResponseCode Link icon

      public int getResponseCode()
      Return last HTTP response code.
      Returns:
      Last HTTP response code
    • getResponseDataAsBytes Link icon

      public byte[] getResponseDataAsBytes()
      Return HTTP response data.
      Returns:
      byte[] HTTP response data
    • getResponseDataAsString Link icon

      public String getResponseDataAsString()
      Return HTTP response data.
      Returns:
      HTTP response data or null
    • getResponseHeaders Link icon

      public Properties getResponseHeaders()
      Return last HTTP response headers.
      Returns:
      HTTP response headers
    • getResponseTimeMs Link icon

      public int getResponseTimeMs()
      Get response time of last HTTP request in milliseconds.
      Returns:
      HTTP response time in milliseconds
    • head Link icon

      public boolean head(String argURL, Properties argHeaders)
      Execute HTTP HEAD request.
      Parameters:
      argURL - URL to connect
      argHeaders - Additional HTTP request headers or null
      Returns:
      True (if HTTP return code 200), else false
    • options Link icon

      public boolean options(String argURL, Properties argHeaders)
      Execute HTTP OPTIONS request.
      Parameters:
      argURL - URL to connect
      argHeaders - Additional HTTP request headers or null
      Returns:
      True (if HTTP return code 200), else false
      Since:
      2024.05.22
    • patch Link icon

      public boolean patch(String argURL, Properties argHeaders, byte[] argPayload)
      Execute HTTP PATCH request.
      Parameters:
      argURL - URL to connect
      argHeaders - Additional HTTP request headers or null
      argPayload - Data to be sent with PATCH request
      Returns:
      True (if HTTP return code 200), else false
      Since:
      2024.05.22
    • patch Link icon

      public boolean patch(String argURL, Properties argHeaders, String argPayload)
      Execute HTTP PATCH request.
      Parameters:
      argURL - URL to connect
      argHeaders - Additional HTTP request headers or null
      argPayload - Data to be sent with PATCH request
      Returns:
      True (if HTTP return code 200), else false
      Since:
      2024.05.22
    • post Link icon

      public boolean post(String argURL, Properties argHeaders, byte[] argPayload)
      Execute HTTP POST request.
      Parameters:
      argURL - URL to connect
      argHeaders - Additional HTTP request headers or null
      argPayload - Data to be sent with POST request
      Returns:
      True (if HTTP return code 200), else false
    • post Link icon

      public boolean post(String argURL, Properties argHeaders, String argPayload)
      Execute HTTP POST request.
      Parameters:
      argURL - URL to connect
      argHeaders - Additional HTTP request headers or null
      argPayload - Data to be sent with POST request
      Returns:
      True (if HTTP return code 200), else false
    • put Link icon

      public boolean put(String argURL, Properties argHeaders, byte[] argPayload)
      Execute HTTP PUT request.
      Parameters:
      argURL - URL to connect
      argHeaders - Additional HTTP request headers or null
      argPayload - Data to be sent with PUT request
      Returns:
      True (if HTTP return code 200), else false
      Since:
      2024.05.22
    • put Link icon

      public boolean put(String argURL, Properties argHeaders, String argPayload)
      Execute HTTP PUT request.
      Parameters:
      argURL - URL to connect
      argHeaders - Additional HTTP request headers or null
      argPayload - Data to be sent with PUT request
      Returns:
      True (if HTTP return code 200), else false
      Since:
      2024.05.22
    • setTimeOutSec Link icon

      public void setTimeOutSec(int argTimeOutSec)
      Set timeout for connect and read requests.
      Parameters:
      argTimeOutSec - Number of seconds for timeout (0 = indefinite timeout)
      Since:
      2025.01.24
    • toString Link icon

      public String toString()
      String representation of object.
      Overrides:
      toString in class Object
      Since:
      2024.08.23