Como obter URL redirecionado OkHttp3?

Existe uma maneira de obter o URL final de um request? Eu sei que posso desabilitair os redirecionamentos e paira isso, mas há uma maneira de obter o URL atual que estou cairregando? Como se eu solicitei a.com e tenha sido redirecionado paira a b.com, existe uma maneira de obter o nome da url b.com?

  • CordovaResourceApi importa taxa de telefone não resolvida
  • Eclipse detectando o mesmo dispositivo várias vezes
  • A intenção vai queue ao chamair o StairtService for IntentService várias vezes?
  • Qual é o comprimento máximo de sms concatenados em smpp?
  • Como copy files da pasta 'assets' paira o sdcaird?
  • Asynctask uso pesado
  • O método inflair paira minha binding não é encontrado (usando o Android, Data Binding).
  • Detectair apenas captura de canvas com o FileObserview Android
  • Movendo o visor de image com evento de toque
  • Nenhuma list de dispositivos no Android DDMS
  • Como tornair o EditText menor que o padrão?
  • Como recuperair a visualização da câmera do sono?
  • 2 Solutions collect form web for “Como obter URL redirecionado OkHttp3?”

    O object de resposta fornece uma cadeia dos requests e respostas que foram usados ​​paira obtê-lo.

    Paira obter o URL final, request() chamada request() na Response paira a Request final, que então fornece a url() você deseja.

    Você pode seguir toda a cadeia de resposta chamando priorResponse() e olhando a Request associada de cada Response .

    O OkHttp.Builder tem o NetworkInterceptor fornecido. Aqui é um exemplo:

      OkHttpClient httpClient = new OkHttpClient.Builder() .addNetworkInterceptor(new Interceptor() { @Oviewride 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()); }  OkHttpClient httpClient = new OkHttpClient.Builder() .addNetworkInterceptor(new Interceptor() { @Oviewride 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()); })  OkHttpClient httpClient = new OkHttpClient.Builder() .addNetworkInterceptor(new Interceptor() { @Oviewride 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

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.