HttpURLConnection
Benefits:
- Lightweight apis helps in easier handling and reduces compatibility issues.
- Automatic processing of caching mechanisms using HttpResponseCache.
- Reduces network usage as well as battery consumption.
Request Parameter:
URI baseUri = new URI("www.exemple.com/search"); URI uri = applyParameters(baseUri, "word","java"); HttpURLConnection connection = (HttpURLConnection) uri.toURL().openConnection(); connection.setDoInput(true); connection.setDoOutput(false); connection.setRequestMethod("GET"); connection.connect(); if (connection.getResponseCode() == HttpURLConnection.HTTP_OK) {
Android Headers Example:
conn.setRequestProperty("Content-Type", "application/json"); conn.setRequestProperty("CustomHeader", token);
Okhttp
Benefits:
- Connection pool
- Gziping
- Caching
- Recovering from network problems
- Redirection
- Repetitions
- Support for synchronous and asynchronous calls
Request Parameter:
HttpUrl.Builder urlBuilder = HttpUrl.parse("https://httpbin.org/get).newBuilder(); urlBuilder.addQueryParameter("website", "www.journaldev.com"); urlBuilder.addQueryParameter("tutorials", "android"); String url = urlBuilder.build().toString(); Request request = new Request.Builder() .url(url) .build();
Android Headers Example:
Request request = new Request.Builder() .header("Authorization", "replace this text with your token") .url("your api url") .build();
source share