تتيح لك خدمة "مستندات Google" المتقدّمة استخدام واجهة برمجة تطبيقات "مستندات Google" في "برمجة التطبيقات". تسمح واجهة برمجة التطبيقات هذه للنصوص البرمجية بقراءة المحتوى وتعديله وتنسيقه في "مستندات Google"، كما هو الحال إلى حد كبير مع خدمة المستندات المضمّنة في "برمجة التطبيقات". في معظم الحالات، تكون الخدمة المضمّنة أسهل في الاستخدام، إلا أنّ هذه الخدمة المتقدمة توفّر بعض الميزات الإضافية.
مَراجع
للحصول على معلومات تفصيلية حول هذه الخدمة، راجِع المستندات المرجعية لواجهة برمجة تطبيقات Docs. مثل جميع الخدمات المتقدمة في لغة "برمجة تطبيقات Google"، تستخدم خدمة "مستندات Google" المتقدمة العناصر والطرق والمعلَمات نفسها التي تستخدمها واجهة برمجة التطبيقات العامة. لمزيد من المعلومات، يُرجى الاطّلاع على كيفية تحديد توقيعات الطرق.
للإبلاغ عن المشاكل والعثور على خدمات دعم أخرى، يُرجى الاطّلاع على دليل دعم واجهة برمجة تطبيقات "مستندات Google".
نموذج التعليمات البرمجية
يستخدم الرمز النموذجي أدناه الإصدار 1 من واجهة برمجة التطبيقات.
إنشاء مستند
ينشئ هذا النموذج مستندًا جديدًا.
البحث عن النص واستبداله
يبحث هذا النموذج عن أزواج من النص ويستبدلها في مستند. يمكن أن يكون هذا مفيدًا عند استبدال العناصر النائبة في نسخة من مستند قالب بقيم من قاعدة بيانات.
إدراج نص وتنسيقه
يدرج هذا النموذج نصًا جديدًا في بداية المستند والأنماط إذا كان بخط وحجم معينين. لاحظ أنّه إذا أمكن، يجب تجميع عمليات متعددة معًا في طلب batchUpdate
واحد لتحقيق الكفاءة.
قراءة الفقرة الأولى
يسجِّل هذا النموذج نص الفقرة الأولى في المستند. نظرًا للطبيعة المهيكلة للفقرات في واجهة برمجة التطبيقات للمستندات، فإن هذا يتضمن دمج نص العناصر الفرعية المتعددة.
أفضل الممارسات
التحديثات المجمّعة
عند استخدام خدمة "مستندات Google" المتقدّمة، يمكنك دمج طلبات متعددة في صفيف
بدلاً من استدعاء batchUpdate
بشكل متكرّر.
لا تفعل - يمكنك الاتصال بـ batchUpdate
بشكل متكرر.
var textToReplace = ['foo', 'bar'];
for (var i = 0; i < textToReplace.length; i++) {
Docs.Documents.batchUpdate({
requests: [{
replaceAllText: ...
}]
}, docId);
}
ما يجب فعله - يمكنك طلب إجراء batchUpdate
مع تقديم مجموعة من التعديلات.
var requests = [];
var textToReplace = ['foo', 'bar'];
for (var i = 0; i < textToReplace.length; i++) {
requests.push({ replaceAllText: ... });
}
Docs.Documents.batchUpdate({
requests: requests
}, docId);