Te traemos el hallazgo a este conflicto, o por lo menos eso pensamos. Si sigues con inquietudes dínoslo, para nosotros será un gusto ayudarte
Solución:
Encontré la solución:
OkHttpClient client = new OkHttpClient.Builder().proxy(proxyTest).build();
Si usamos el constructor para ingresar el proxy, funcionará de maravilla =D
okhttp versión:3.11.0
. Ejemplo de proxy SOCKS
String hostname = "localhost"/*127.0.0.1*/;
int port = 1080;
Proxy proxy = new Proxy(Proxy.Type.SOCKS,
new InetSocketAddress(hostname, port));
OkHttpClient client = new OkHttpClient.Builder()
.proxy(proxy)
.build();
SOCKS5 Ejemplo de autenticación
Creo que es la solución de trabajo más sencilla. Pero me parece que puede no ser 100% seguro. Tomé este código de este código de aquí y lo modifiqué porque el RequestorType de mi proxy es SERVIDOR. En realidad, Java tiene una API extraña para los proxies, debe configurar la autenticación para el proxy a través del entorno del sistema (puede verlo desde el mismo enlace)
final int proxyPort = 1080; //your proxy port
final String proxyHost = "your proxy host";
final String username = "proxy username";
final String password = "proxy password";
InetSocketAddress proxyAddr = new InetSocketAddress(proxyHost, proxyPort);
Proxy proxy = new Proxy(Proxy.Type.SOCKS, proxyAddr);
Authenticator.setDefault(new Authenticator()
@Override
protected PasswordAuthentication getPasswordAuthentication()
if (getRequestingHost().equalsIgnoreCase(proxyHost))
if (proxyPort == getRequestingPort())
return new PasswordAuthentication(username, password.toCharArray());
return null;
);
OkHttpClient client = new OkHttpClient.Builder()
.proxy(proxy)
.build();
Si posees algún contrariedad o disposición de progresar nuestro tutorial eres capaz de añadir una observación y con placer lo analizaremos.