¿Cómo cancelar la solicitud en curso en retrofit cuando retrofit.client.UrlConnectionClient se utiliza como cliente?
Estoy utilizando retrofit para las llamadas http en mi aplicación de Android y retrofit.client.UrlConnectionClient como el cliente mientras se construye el adaptador.
RestAdapter.Builder builder = new RestAdapter.Builder() .setEndpoint(url) .setLogLevel(RestAdapter.LogLevel.FULL) .setClient( new Client.Provider() { public Client get() { return new UrlConnectionClient() { @Override protected HttpURLConnection openConnection(Request request) throws IOException { HttpURLConnection connection = super.openConnection(request); connection.setConnectTimeout(connectionTimeout); return connection; }
Quería establecer el tiempo de espera por lo que he utilizado UrlConnectionClient como mi cliente. No pude encontrar un camino con otros clientes como OkHttp.
- Okclient en Okclient no se puede aplicar a (okhttp3.okhttpclient)
- Excepción Outofmemory utilizando la biblioteca retrofit android
- Cómo establecer dinámicamente encabezados en Retrofit (Android)
- Javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Ancla de confianza para la ruta de certificación no encontrada
- Reajustar varios parámetros POST
La pregunta es: ¿Cómo puedo cancelar la solicitud en curso?
He visto un post similar @ Using Square's Retrofit Client, ¿es posible cancelar una solicitud en curso? ¿Si es así, cómo? Pero mi código sería realmente complejo si intento agregar mis propios ejecutores y tratar de cancelar la solicitud utilizando eso. Estoy buscando si hay un poco mejor manera con mi código existente.
También veo que Retorofit V2.0 tiene un plan para Reintentar y Cancelar pero no estoy seguro de cuándo sería lanzado. Https://github.com/square/retrofit/issues/297
Necesitas ayuda ! De hecho, también necesito una forma de volver a intentarlo con el mismo código.
- Cómo obtener archivos xml gziped con retrofit?
- Retrofit - Cambiar BaseUrl
- ¿Cómo pasar los parámetros de Map <String, String> o el objeto a la petición POST mediante Retrofit?
- Detener y reanudar las descargas utilizando Retrofit
- ¿Cómo puedo usar retrofit library con la barra de progreso?
- IllegalArgumentException en Retrofit / no debe tener bloque de reemplazo
- Retrofit java.net.SocketTimeoutException
- Retrofit API para recuperar una imagen png
Esto ha estado disponible desde 2.0.0-beta2 ( https://github.com/square/retrofit/releases/tag/parent-2.0.0-beta2 ). No sé si hay un documento que explica eso, pero aquí está el enlace a la API:
http://square.github.io/retrofit/2.x/retrofit/retrofit/Call.html#cancel–
La API de 'Llamada' permite hacer la Reintentación también por 'Clonar' la solicitud.
- ¿Cómo puedo comprobar si un juego de caracteres de una cadena es el mismo que el conjunto de caracteres del lenguaje conjunto del dispositivo
- Cómo eliminar tamaño de montón crecer en la aplicación de titanio en Android?