From 2f341aa346dc7aa4970793b3498c17c10f657dd0 Mon Sep 17 00:00:00 2001 From: Ankush Sachdeva Date: Tue, 15 Oct 2013 04:03:35 +0530 Subject: [PATCH] Added Proxy Authentication ; fixes #328 --- .../com/loopj/android/http/AsyncHttpClient.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/library/src/com/loopj/android/http/AsyncHttpClient.java b/library/src/com/loopj/android/http/AsyncHttpClient.java index c9bb29aab..ea363e7ca 100644 --- a/library/src/com/loopj/android/http/AsyncHttpClient.java +++ b/library/src/com/loopj/android/http/AsyncHttpClient.java @@ -310,6 +310,23 @@ public void setProxy(String hostname, int port) { final HttpParams httpParams = this.httpClient.getParams(); httpParams.setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy); } + /** + * Sets the Proxy by it's hostname,port,username and password + * + * @param hostname the hostname (IP or DNS name) + * @param port the port number. -1 indicates the scheme default port. + * @param username the username + * @param password the password + */ + public void setProxy(String hostname,int port,String username,String password){ + httpClient.getCredentialsProvider().setCredentials( + new AuthScope(hostname, port), + new UsernamePasswordCredentials(username, password)); + final HttpHost proxy = new HttpHost(hostname, port); + final HttpParams httpParams = this.httpClient.getParams(); + httpParams.setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy); + } + /** * Sets the SSLSocketFactory to user when making requests. By default,