Configuring Authentication: BASIC, DIGEST or NTLM
Configuring authentication with AsyncHttpClient is simple. You can configure it at the Request level using the RealmBuilder:
AsyncHttpClient client = new AsyncHttpClient();
Realm realm = new Realm.RealmBuilder()
.setPrincipal(user)
.setPassword(admin)
.setUsePreemptiveAuth(true)
.setScheme(AuthScheme.BASIC)
.build();
client.prepareGet("http://...").setRealm(realm).execute();You can also set the realm at the AsyncHttpClientConfig level:
Builder builder = new AsyncHttpClientConfig.Builder();
Realm realm = new Realm.RealmBuilder()
.setPrincipal(user)
.setPassword(admin)
.setUsePreemptiveAuth(true)
.setScheme(AuthScheme.BASIC)
.build();
builder.setRealm(realm).build();
AsyncHttpClient client = new AsyncHttpClient(builder.build());The authentication type supported are BASIC, DIGEST and NTLM. You can also customize your own authentication mechanism by using the Response Filter.