Saltar al contenido

Configuración del proxy OkHttp

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.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *