Skip to content
This repository has been archived by the owner on Jun 3, 2024. It is now read-only.

Latest commit

 

History

History
48 lines (36 loc) · 1.12 KB

README.md

File metadata and controls

48 lines (36 loc) · 1.12 KB

A lightweight and easy to use HTTP Client.

This project has created solely for learning.

Supported Protocols

  • HTTP/1.0
  • HTTP/1.1
  • HTTP/2

Features

  • Well-documented
  • Support for using multiple connection scheme
  • Both Sync (blocking) and Async (non-blocking) API
    • Using CompletableFuture for the async API
  • Support for HTTP/2 Protocol
  • Headers Factory class
  • Numerous response body types
  • Manipulation of cookies
  • Support for HTTP authentication protocols
    • HTTP Basic
    • Digest
  • Compression
  • Configuration options
    • Connection, read timeout
    • Authentication settings
    • Redirect policy
    • Custom Executor
  • Integrated HTTP server for JUnit tests

Core classes

  • HttpRequest – represents the request to be sent via the HttpClient
  • HttpClient – represents a container, used to send multiple requests and set up its configuration
  • HttpResponse – represents the result of an HttpRequest call

Usage

Performance

Installation

Dependencies

  • Guava 30.1
  • Lombok 1.18.16
  • Javalin 3.13.4