المهلات والأخطاء

يصف هذا المستند كيفية تعيين المهلات والتعامل مع أخطاء HTTP التي يمكن أن قد تظهر عند استخدام مكتبة برامج Google API للغة Java.

المحتويات

تعيين المُهلات

في المثال التالي، الذي يستخدم Google Analytics API، تُستخدم الطريقتان setConnectTimeout وsetReadTimeout لضبط إعدادات الربط مهلات القراءة إلى ثلاث دقائق (بالمللي ثانية) لجميع الطلبات:

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 من Google APIs

عند رصد رمز حالة خطأ في استجابة HTTP لإحدى واجهات Google API تستخدم تنسيق JSON، تعرض المكتبات التي تم إنشاؤها خطأ GoogleJsonResponseException.

تستخدم الأخطاء التنسيق المحدّد في ردود الأخطاء.

يوضّح المثال التالي إحدى الطرق للتعامل مع هذه الاستثناءات:

Drive.Files.List listFiles = drive.files.list();
try {
  FileList response = listFiles.execute();
  ...
} catch (GoogleJsonResponseException e) {
  System.err.println(e.getDetails());
}