يحتاج العديد من المطورين إلى دمج مستندات Word متعددة في Node.JS لإنشاء تقارير أو حزم موحدة. يوفر GroupDocs.Merger Cloud SDK for Node.js واجهة برمجة تطبيقات قوية تتعامل مع دمج Word على جانب الخادم دون الحاجة إلى شفرة معقدة لمعالجة الملفات. في هذا الدليل سترى تنفيذًا كاملاً، واستدعاءات cURL المكافئة، وخطوات التثبيت، ونصائح أفضل الممارسات لدمج مستنداتك بسرعة.
دمج مستندات Word متعددة في Node.JS - مثال كامل للشفرة
هذا المثال يوضح كيفية دمج ثلاثة ملفات DOCX في مستند واحد باستخدام GroupDocs.Merger Cloud SDK for Node.js.
const GroupDocsMergerCloud = require("@groupdocs/merger-cloud");
// ==== Configuration ====
// Replace with your actual credentials
const clientId = "YOUR_CLIENT_ID";
const clientSecret = "YOUR_CLIENT_SECRET";
const config = new GroupDocsMergerCloud.Configuration(clientId, clientSecret);
const mergeApi = new GroupDocsMergerCloud.MergeApi(config);
// ==== Input / Output paths ====
const inputFiles = [
"documents/input1.docx",
"documents/input2.docx",
"documents/input3.docx"
];
const outputFile = "documents/combined_output.docx";
// ==== Build request ====
const documentEntries = inputFiles.map(path => {
return new GroupDocsMergerCloud.Models.DocumentEntry({
fileInfo: new GroupDocsMergerCloud.Models.FileInfo({
filePath: path
})
});
});
const mergeRequest = new GroupDocsMergerCloud.Models.MergeDocumentsRequest({
documents: documentEntries,
outputPath: outputFile
});
// ==== Execute merge ====
(async () => {
try {
const result = await mergeApi.mergeDocuments(mergeRequest);
console.log(`Merge completed successfully. Output file: ${result.path}`);
} catch (error) {
console.error("Error during merging:", error);
}
})();
ملاحظة: يوضح مثال الشيفرة هذا الوظيفة الأساسية. قبل استخدامه في مشروعك، تأكد من تحديث مسارات الملفات (
input1.docx,combined_output.docx, إلخ) لتطابق المواقع الفعلية للملفات لديك، وتحقق من أن جميع الاعتمادات المطلوبة مثبتة بشكل صحيح، واختبر بدقة في بيئة التطوير الخاصة بك. إذا واجهت أي مشكلات، يرجى الرجوع إلى الوثائق الرسمية أو التواصل مع فريق الدعم للحصول على المساعدة.
دمج مستندات Word عبر REST API باستخدام cURL
إذا كنت تفضل نهج REST النقي، يمكن تنفيذ عملية الدمج نفسها باستخدام أوامر cURL. أدناه سير عمل مختصر يقوم بالمصادقة، رفع ملفات المصدر، تشغيل الدمج، وتنزيل النتيجة.
1. المصادقة والحصول على رمز الوصول
curl -X POST "https://api.groupdocs.cloud/v2.0/merger/authenticate" \
-H "Content-Type: application/json" \
-d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'
تحتوي الاستجابة على access_token يُستخدم في المكالمات اللاحقة.
2. تحميل ملفات المصدر
كرر هذه الخطوة لكل ملف DOCX تريد دمجه.
curl -X POST "https://api.groupdocs.cloud/v2.0/storage/file/upload?path=documents/input1.docx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/octet-stream" \
--data-binary "@path/to/input1.docx"
3. تنفيذ عملية الدمج
curl -X POST "https://api.groupdocs.cloud/v2.0/merger/merge" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"documents": [
{"fileInfo": {"filePath": "documents/input1.docx"}},
{"fileInfo": {"filePath": "documents/input2.docx"}},
{"fileInfo": {"filePath": "documents/input3.docx"}}
],
"outputPath": "documents/combined_output.docx"
}'
تُعيد API مسار الملف المدمج.
4. تنزيل المستند المدمج
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/download?path=documents/combined_output.docx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o combined_output.docx
لمزيد من التفاصيل حول حمولة الطلبات والخيارات، راجع وثائق API الرسمية.
كيف يعمل دمج مستندات Word المتعددة في Node.JS
يقوم SDK بتجريد عملية الدمج إلى بضع خطوات منطقية:
إنشاء التكوين -
new GroupDocsMergerCloud.Configuration(clientId, clientSecret)يبني سياق المصادقة. راجع مرجع الفئة في مرجع API.const config = new GroupDocsMergerCloud.Configuration(clientId, clientSecret);كائن API -
new GroupDocsMergerCloud.MergeApi(config)يوفر الوصول إلى عمليات الدمج.const mergeApi = new GroupDocsMergerCloud.MergeApi(config);إدخالات المستند - يتم تغليف كل ملف مصدر في كائن
DocumentEntryيحتوي علىFileInfoمع مسار الملف.const documentEntries = inputFiles.map(path => { return new GroupDocsMergerCloud.Models.DocumentEntry({ fileInfo: new GroupDocsMergerCloud.Models.FileInfo({ filePath: path }) }); });طلب الدمج -
MergeDocumentsRequestيجمع العناصر ومسار الإخراج المطلوب.const mergeRequest = new GroupDocsMergerCloud.Models.MergeDocumentsRequest({ documents: documentEntries, outputPath: outputFile });التنفيذ -
mergeApi.mergeDocuments(mergeRequest)يرسل الطلب إلى خدمة السحابة. الوعد يُحلّ مع كائن نتيجة يحتوي على مسار ملف الإخراج.const result = await mergeApi.mergeDocuments(mergeRequest); console.log(`Merge completed successfully. Output file: ${result.path}`);
تمكنك هذه الخطوات معًا من دمج مستندات Word متعددة بكفاءة دون الحاجة إلى التعامل مع تدفقات الملفات منخفضة المستوى.
تحضير البيئة لـ GroupDocs.Merger
- تثبيت SDK
npm install groupdocs-merger-cloud
الحزمة متاحة من صفحة صفحة التحميل
إصدار Node.js - تأكد من أنك تستخدم Node.js 12 أو أحدث.
تكوين بيانات الاعتماد - استبدل
YOUR_CLIENT_IDوYOUR_CLIENT_SECRETفي الشيفرة بالقيم من حساب GroupDocs Cloud الخاص بك.إنشاء مجلد مشروع - ضع ملفات DOCX المصدرية في مجلد فرعي
documents/كما هو موضح في المثال.
مع إكمال هذه الخطوات، أنت جاهز لتشغيل برنامج الدمج أو استدعاء نقاط النهاية REST.
الخلاصة
دمج مستندات Word متعددة في Node.JS يصبح بسيطًا مع GroupDocs.Merger Cloud SDK for Node.js. يتعامل SDK مع تحميل الملفات، ومنطق الدمج، وتوليد المخرجات، مما يسمح لك بالتركيز على منطق الأعمال بدلاً من معالجة الملفات على مستوى منخفض. تذكر أن تحصل على ترخيص مناسب للاستخدام في الإنتاج؛ يمكنك البدء بـ رخصة مؤقتة والترقية إلى اشتراك كامل كلما زادت احتياجاتك. ابدأ الدمج اليوم وسهّل سير عمل المستندات الخاص بك.
الأسئلة الشائعة
كيف يمكنني دمج مستندات Word متعددة في Node.JS باستخدام SDK؟
استخدم الفئةMergeApiلإنشاء طلبMergeDocumentsRequestالذي يسرد كل ملف DOCX كـDocumentEntry. يقوم SDK بدمجها بالترتيب المحدد ويحفظ النتيجة في مسار الإخراج المحدد.هل من الممكن دمج ملفات PDF معًا باستخدام نفس SDK؟
نعم، يدعم Merger SDK صيغ PDF، DOCX، ODT، والعديد من الصيغ الأخرى. ما عليك سوى تغيير امتدادات الملفات في مصفوفةinputFilesوسيتولى SDK التحويل تلقائيًا. راجع الوثائق الرسمية للحصول على تفاصيل الصيغ.ما هي الحدود على عدد المستندات التي يمكنني دمجها في طلب واحد؟
تفرض خدمة السحابة حدًا للحجم بدلاً من عدد صارم. طالما أن الحجم الإجمالي يبقى ضمن حصة حسابك، يمكنك دمج العشرات من الملفات. بالنسبة للدفعات الكبيرة جدًا، فكر في تحميل الملفات إلى تخزين GroupDocs أولاً والإشارة إليها بواسطة المعرف.هل يجب أن أقلق بشأن الترخيص للتطوير مقابل الإنتاج؟
يمكن استخدام ترخيص مؤقت من خلال صفحة الترخيص المؤقت. بالنسبة لنشر الإنتاج، قم بشراء ترخيص كامل لفتح عمليات الدمج غير المحدودة ودعم الأولوية.
