En este documento, se describe cómo configurar tiempos de espera y controlar los errores de HTTP que tu código recibir cuando uses la biblioteca cliente de las APIs de Google para Java.
Contenido
Establece tiempos de espera
En el siguiente ejemplo, que usa la API de Google Analytics, se muestra
Los métodos setConnectTimeout
y setReadTimeout
se usan para configurar las conexiones y
Tiempos de espera de lectura de tres minutos (en milisegundos) para todas las solicitudes:
private HttpRequestInitializer setHttpTimeout(final HttpRequestInitializer requestInitializer) {
return new HttpRequestInitializer() {
@Override
public void initialize(HttpRequest httpRequest) throws IOException {
requestInitializer.initialize(httpRequest);
httpRequest.setConnectTimeout(3 * 60000); // 3 minutes connect timeout
httpRequest.setReadTimeout(3 * 60000); // 3 minutes read timeout
}
};
GoogleCredential credential = ....
final Analytics analytics = Analytics.builder(new NetHttpTransport(), jsonFactory, setHttpTimeout(credential)).build();
Manejo de respuestas de error de HTTP de las APIs de Google
Cuando se detecta un código de estado de error en una respuesta HTTP a una API de Google que usa el formato JSON, las bibliotecas generadas arrojan una GoogleJsonResponseException.
Los errores utilizan el formato que se especifica en Respuestas de error.
En el siguiente ejemplo, se muestra una forma en la que puedes manejar estas excepciones:
Drive.Files.List listFiles = drive.files.list();
try {
FileList response = listFiles.execute();
...
} catch (GoogleJsonResponseException e) {
System.err.println(e.getDetails());
}