In diesem Dokument wird beschrieben, wie Sie Zeitlimits festlegen und HTTP-Fehler beheben, die in Ihrem Code möglicherweise erhalten, wenn Sie die Google API-Clientbibliothek für Java verwenden.
Inhalt
Zeitlimits einrichten
Im folgenden Beispiel, in dem die Google Analytics API verwendet wird, verwendet der Parameter
Die Methoden setConnectTimeout
und setReadTimeout
werden verwendet, um die Verbindungs- und
Zeitlimits für alle Anfragen auf drei Minuten (in Millisekunden) lesen:
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();
HTTP-Fehlerantworten von Google APIs verarbeiten
Wenn ein Fehlerstatuscode in einer HTTP-Antwort an eine Google API erkannt wird, das JSON-Format verwendet, lösen die generierten Bibliotheken eine GoogleJsonResponseException aus.
Für die Fehler gilt das unter Fehlerantworten angegebene Format.
Das folgende Beispiel zeigt eine Möglichkeit, wie diese Ausnahmen verarbeitet werden können:
Drive.Files.List listFiles = drive.files.list();
try {
FileList response = listFiles.execute();
...
} catch (GoogleJsonResponseException e) {
System.err.println(e.getDetails());
}