¿Cómo obtener la URL redireccionada de OkHttp3?

¿Hay alguna manera de obtener la URL final de una solicitud? Sé que puedo deshabilitar las redirecciones ya esto mismo, pero ¿hay una manera de obtener la URL actual que estoy cargando? Al igual que si solicité a.com y me redireccionaron a b.com, ¿hay alguna forma de obtener el nombre de url b.com?

El objeto de respuesta proporciona una cadena de las peticiones y respuestas que se utilizaron para obtenerlo.

Para obtener la URL final, request() llamada request() en la Response para la Request final, que a continuación, proporciona la url() que desee.

Puede seguir toda la cadena de respuestas llamando a priorResponse() y observando la Request asociada de cada Response .

El OkHttp.Builder tiene NetworkInterceptor provided.Here es un ejemplo:

  OkHttpClient httpClient = new OkHttpClient.Builder() .addNetworkInterceptor(new Interceptor() { @Override public Response intercept(Chain chain) throws IOException { System.out.println("url: " + chain.request().url()); return chain.proceed(chain.request()); } }) .build(); System.out.println(httpClient.newCall(new Request.Builder().url("http://google.com").build()).execute()); 

OkHttp3 wiki: Interceptores

  • MockRetrofit y BehaviorDelegate ignoran el OkHttpClient
  • Android java.security.cert.CertPathValidatorException: Ancla de confianza para la ruta de certificación no encontrada
  • OkHttp código de estado de respuesta en el método onFailure
  • ¿Cómo establezco el tiempo de espera para OkHttpClient?
  • Recvfrom falló: ECONNRESET (Conexión restablecida por pares)
  • OkHttpClient tiene un recuento máximo de reintentos
  • MissingResourceException: No se puede encontrar el paquete para el nombre base sun.util.logging.resources.logging, locale en_US
  • Android Retrofit2 Actualizar Oauth 2 Token
  • OkHttp con pinzado de certificado
  • OkHttp PublicKey pinning en Android
  • Certificado de certificado okHTTP cuadrado - error sslSocketFactory
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.