أحدث إصدار من Google Drive API هو الإصدار 3. يكون الأداء في الإصدار 3 أفضل لأن فإن عمليات البحث لا تعرض سوى مجموعة فرعية من الحقول. استخدام الإصدار الحالي ما لم تكن بحاجة إلى المجموعة v2. إذا كنت تستخدم الإصدار 2، ننصحك الانتقال إلى الإصدار 3. لنقل البيانات، يُرجى الاطّلاع على نقل البيانات إلى الإصدار 3 من Drive API. للحصول على قائمة كاملة بالاختلافات في الإصدارات، راجع مقارنة بين الإصدارَين 2 و3 من Drive API المرجع.
إذا كنت تريد مواصلة استخدام الإصدار 2، يُرجى الاطّلاع على التعديل في دليل استخدام واجهة برمجة التطبيقات v2 للتعرّف على طريقة استخدام بعض التعليمات في الإصدار الثالث. الأدلة بتعديل v2 لمطوّري البرامج.
لمزيد من المعلومات حول التحسينات التي تم إجراؤها على الإصدار 3 من Drive API، يمكنك مشاهدة صفحة التالي فيديو لمهندسي Google يناقشون تصميم واجهة برمجة التطبيقات الجديد.
تحسينات على الإصدار 3
لتحسين الأداء وتقليل تعقيد سلوك واجهة برمجة التطبيقات، يوفّر الإصدار 3 ما يلي: تحسينات على إصدار واجهة برمجة التطبيقات السابق:
- لا تعرض عمليات البحث عن الملفات ومساحات التخزين السحابي المشتركة موارد كاملة تلقائيًا،
لن يتم إرجاع سوى مجموعة فرعية من الحقول شائعة الاستخدام. لمزيد من التفاصيل عن
fields
، اطّلِع على طريقةfiles.list
. وطريقةdrives.list
. - إنّ جميع الطرق التي تعرض ردًّا تقريبًا الآن تتطلّب
fields
. . للحصول على قائمة بجميع الطرق التي تتطلّبfields
، يُرجى مراجعة مرجع واجهة برمجة تطبيقات Drive - تمت إزالة الموارد التي تحتوي على إمكانات مكرّرة. في ما يلي بعض الأمثلة:
- تؤدي الطريقة
files.list
الوظيفة نفسها التي تؤديهاChildren
وParents
، لذا تمت إزالتها من الإصدار 3. - تمت إزالة طرق
Realtime.*
.
- تؤدي الطريقة
- لا يتم عرض بيانات التطبيق تلقائيًا في عمليات البحث. في الإصدار 2، يمكنك ضبط
drive.appdata
، وتعرض بيانات التطبيق منfiles.list
وchanges.list
لكنه يبطئ الأداء. في الإصدار 3، يمكنك إعداد نطاقdrive.appdata
، وتعيين معلَمة طلب البحثspaces=appDataFolder
لطلب بيانات التطبيق. - تستخدم جميع عمليات التحديث PATCH بدلاً من PUT.
- لتصدير مستندات Google، استخدم
files.export
. - يختلف سلوك طريقة
changes.list
. بدلاً من معرفات التغيير، استخدم الرموز المميزة للصفحة المعتمة. لإجراء استطلاع لجمع التغييرات، عليك أولاً استدعاءchanges.getStartPageToken
للقيمة الأولية. بالنسبة إلى طلبات البحث اللاحقة، سيتم استخدام السمةchanges.list
تُرجع القيمةnewStartPageToken
. - تؤدي طُرق التعديل الآن إلى رفض الطلبات التي تحدّد حقولاً غير قابلة للكتابة.
- حقلا الإصدار 2
exportFormats
وimportFormats
في موردabout
عبارة عن قوائم تنسيقات الاستيراد أو التصدير المسموح بها. في الإصدار 3، تعد خرائط من نوع MIME الاستهدافات المحتملة لجميع عمليات الاستيراد أو التصدير المسموح بها. - أصبح الاسمان البديلان للبريد الإلكتروني v2
appdata
وappfolder
هما الآنappDataFolder
في الإصدار 3. - تمت إزالة مورد "
properties
" من الإصدار 3. تشير رسالة الأشكال البيانية يحتوي موردfiles
على الحقلproperties
. يحتوي على أزواج المفتاح/القيمة الحقيقية. يحتوي الحقلproperties
على المعلومات العامة. ويحتوي الحقلappProperties
على خصائص خاصة، لذا إلى حقل مستوى الرؤية. - يتم تعديل الحقل "
modifiedTime
" في مورد "files
" في المرة الأخيرة. قام أي شخص بتعديل الملف. في الإصدار 2، كان الحقلmodifiedDate
قابلاً للتغيير فقط. عند التحديث في حال ضبط الحقلsetModifiedDate
. - لا يتم تلقائيًا ضبط الحقل
viewedByMeTime
في مورد "files
". تحديث. - لاستيراد تنسيقات "مستندات Google"، يجب ضبط
mimeType
الهدف المناسب. في نص المورد. وفي الإصدار 2، يتم إعداد?convert=true
. - تعرض عمليات الاستيراد الخطأ 400 إذا لم يكن التنسيق متوافقًا.
- لا يمكن للقرّاء والمعلِّقين الاطّلاع على الأذونات.
- تمت إزالة الاسم المستعار
me
للأذونات. - كانت بعض الوظائف متاحة كجزء من مورد الطلب، ولكن
تتوفر بدلاً من ذلك كمعلمة طلب. مثل:
- في الإصدار 2، يمكنك استخدام "
children.delete
" لإزالة ملف فرعي من المجلد الرئيسي. - في الإصدار 3، يتم استخدام
files.update
على الطفل مع?removeParents=parent_id
في عنوان URL.
- في الإصدار 2، يمكنك استخدام "
اختلافات أخرى
تختلف أسماء الحقول والمَعلمات في الإصدار 3. ومن الأمثلة على ذلك:
- تحلّ السمة
name
محلّtitle
في موردfiles
. Time
هي اللاحقة لجميع حقول التاريخ والوقت بدلاً منDate
.- لا تستخدم عمليات القائمة الحقل
items
لاحتواء مجموعة النتائج. تشير رسالة الأشكال البيانية نوع المورد حقلاً للنتائج (مثلfiles
أوchanges
).