أتمتة تحديثات جداول البيانات هي حاجة شائعة عند بناء خدمات ويب مدفوعة بالبيانات أو خطوط تقارير. يتيح لك GroupDocs.Editor Cloud SDK for Node.js تعديل ملفات Excel في Node.js عبر REST ببضع أسطر من الشيفرة فقط. في هذا البرنامج التعليمي ستتعرف على كيفية تكوين SDK، تحميل مصنف XLSX، تعديل خلية، حفظ التغييرات، وتحقيق النتيجة نفسها باستخدام استدعاءات cURL الخام. كما نناقش الميزات الرئيسية، خيارات التكوين، واعتبارات الأداء لمساعدتك على دمج تحرير Excel بكفاءة.
تحرير ملف Excel في Node.js عبر REST - دليل من 5 خطوات
- تثبيت SDK وتكوين بيانات الاعتماد: قم بتعيين
CLIENT_IDوCLIENT_SECRETحتى يتمكن المكتبة من المصادقة مع GroupDocs Cloud.
const CLIENT_ID = "YOUR_CLIENT_ID";
const CLIENT_SECRET = "YOUR_CLIENT_SECRET";
const config = new GroupDocsEditorCloud.Configuration(CLIENT_ID, CLIENT_SECRET);
const editApi = new GroupDocsEditorCloud.EditApi(config);
- تحميل دفتر عمل Excel للتحرير: استخدم
EditDocumentRequestلفتح الملف المخزن في سحابة التخزين الخاصة بك.
const editRequest = new GroupDocsEditorCloud.EditDocumentRequest({
fileInfo: new GroupDocsEditorCloud.FileInfo({ filePath: "input.xlsx" })
});
const editResult = await editApi.editDocument(editRequest);
- استرجاع ورقة العمل الأولى وتحديد الخلية المستهدفة: تُعيد مجموعة تطوير البرمجيات (SDK) كائن
documentيحتوي على أوراق العمل والخلايا.
const worksheet = editResult.document.worksheets[0];
let targetCell = worksheet.cells.find(c => c.rowIndex === 0 && c.columnIndex === 0);
- تحديث أو إنشاء قيمة الخلية: تغيير محتوى الخلية A1 (أو إضافتها إذا لم تكن موجودة).
if (!targetCell) {
targetCell = new GroupDocsEditorCloud.Cell({
rowIndex: 0,
columnIndex: 0,
value: "Edited via GroupDocs Editor Cloud"
});
worksheet.cells.push(targetCell);
} else {
targetCell.value = "Edited via GroupDocs Editor Cloud";
}
- احفظ المصنف المعدل مرة أخرى في التخزين: قدم
outputPathواستدعِsaveDocument.
const saveOptions = new GroupDocsEditorCloud.SaveOptions({ outputPath: "output.xlsx" });
const saveRequest = new GroupDocsEditorCloud.SaveDocumentRequest({
documentId: editResult.documentId,
document: editResult.document,
saveOptions: saveOptions
});
await editApi.saveDocument(saveRequest);
للحصول على قائمة كاملة بالفئات والطرق، راجع مرجع API.
تحرير ملف Excel في Node.js عبر REST - مثال كامل للكود
يوضح المثال التالي كيفية تحرير ملف Excel في Node.js عبر REST باستخدام GroupDocs.Editor Cloud SDK.
const GroupDocsEditorCloud = require("@groupdocs/editor-cloud");
// Replace with your actual GroupDocs Cloud credentials
const CLIENT_ID = "YOUR_CLIENT_ID";
const CLIENT_SECRET = "YOUR_CLIENT_SECRET";
// Paths for the source Excel file and the edited result
const INPUT_FILE_PATH = "input.xlsx";
const OUTPUT_FILE_PATH = "output.xlsx";
async function editExcel() {
// Configure the SDK
const config = new GroupDocsEditorCloud.Configuration(CLIENT_ID, CLIENT_SECRET);
const editApi = new GroupDocsEditorCloud.EditApi(config);
// 1. Load the Excel workbook for editing
const editRequest = new GroupDocsEditorCloud.EditDocumentRequest({
fileInfo: new GroupDocsEditorCloud.FileInfo({
filePath: INPUT_FILE_PATH
})
});
const editResult = await editApi.editDocument(editRequest);
const documentId = editResult.documentId;
const document = editResult.document;
// 2. Retrieve the first worksheet
const worksheet = document.worksheets[0];
// 3. Update cell A1 (rowIndex = 0, columnIndex = 0) with a new value
let targetCell = worksheet.cells.find(c => c.rowIndex === 0 && c.columnIndex === 0);
if (!targetCell) {
targetCell = new GroupDocsEditorCloud.Cell({
rowIndex: 0,
columnIndex: 0,
value: "Edited via GroupDocs Editor Cloud"
});
worksheet.cells.push(targetCell);
} else {
targetCell.value = "Edited via GroupDocs Editor Cloud";
}
// 4. Save the edited workbook back to storage
const saveOptions = new GroupDocsEditorCloud.SaveOptions({
outputPath: OUTPUT_FILE_PATH
});
const saveRequest = new GroupDocsEditorCloud.SaveDocumentRequest({
documentId: documentId,
document: document,
saveOptions: saveOptions
});
const saveResult = await editApi.saveDocument(saveRequest);
console.log(`Edited file saved to: ${saveResult.path}`);
}
// Execute the edit operation
editExcel().catch(error => {
console.error("Error during Excel editing:", error);
});
ملاحظة: يوضح مثال الشيفرة هذا الوظيفة الأساسية. قبل استخدامه في مشروعك، تأكد من تحديث أي مسارات ملفات وقيم التكوين لتتناسب مع بيئتك الفعلية، وتحقق من تثبيت جميع الاعتمادات المطلوبة بشكل صحيح، واختبر بدقة في بيئة التطوير الخاصة بك. إذا واجهت أي مشكلات، يرجى الرجوع إلى الوثائق الرسمية أو التواصل مع فريق الدعم للحصول على المساعدة.
تحديث ورقة XLSX باستخدام REST API في Node.js عبر cURL
فيما يلي دليل سريع للعملية نفسها باستخدام استدعاءات HTTP الخام. استبدل القيم النائبة ببيانات الاعتماد الفعلية وأسماء الملفات الخاصة بك.
- الحصول على رمز وصول
curl -X POST "https://api.groupdocs.cloud/v2.0/connect/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=client_credentials"
الاستجابة تحتوي على access_token.
- تحميل ملف XLSX المصدر
curl -X POST "https://api.groupdocs.cloud/v2.0/storage/file/input.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-F "file=@input.xlsx"
- تحرير دفتر العمل (تعديل الخلية A1)
curl -X POST "https://api.groupdocs.cloud/v2.0/editor/edit" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fileInfo": { "filePath": "input.xlsx" },
"options": {
"cells": [
{ "rowIndex": 0, "columnIndex": 0, "value": "Edited via GroupDocs Editor Cloud" }
]
}
}'
- تنزيل الملف المعدل
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/output.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.xlsx
لمزيد من التفاصيل حول حمولة الطلبات، راجع الوثائق الرسمية لواجهة برمجة التطبيقات.
المتطلبات والإعداد لـ GroupDocs.Editor Cloud SDK for Node.js
لبدء استخدام SDK، تحتاج إلى Node.js 14 أو أحدث وحساب GroupDocs Cloud.
npm install groupdocs-editor-cloud
يمكنك أيضًا تنزيل أحدث حزمة من صفحة الإصدار. بعد التثبيت، أنشئ client_id و client_secret في لوحة تحكم GroupDocs Cloud الخاصة بك واحفظهما بأمان.
ما الذي يجعل GroupDocs.Editor Cloud SDK for Node.js مثالياً لتعديل أوراق عمل Excel
- دعم كامل لـ XLSX - تحميل، تعديل، وحفظ دفاتر العمل مع الحفاظ على الصيغ، الأنماط، والتحقق من صحة البيانات.
- تحرير على مستوى الخلية - الوصول إلى خلايا، صفوف، أو أعمدة فردية برمجياً، وهو مثالي لتحديث التقارير أو لوحات المعلومات.
- تكامل تخزين السحابة - العمل مباشرةً مع الملفات المخزنة في GroupDocs Cloud دون تنزيلها محلياً.
- اتصال REST آمن - جميع العمليات تتم عبر HTTPS، ويتولى SDK إدارة الرموز المميزة لك.
للحصول على مزيد من التفاصيل، راجع الوثائق.
تحسين خيارات تحرير Excel في GroupDocs.Editor Cloud
يُظهر SDK عدة خيارات تتيح لك التحكم في كيفية حفظ المصنف المُعدَّل.
const saveOptions = new GroupDocsEditorCloud.SaveOptions({
outputPath: "output.xlsx",
// You can also set compression level, password protection, etc.
});
outputPath- مسار الوجهة في التخزين السحابي.compressionLevel- تقليل حجم الملف لأوراق العمل الكبيرة (متاح في مرجع API).password- حماية الملف الناتج بكلمة مرور إذا لزم الأمر.
قم بضبط هذه الإعدادات لتتناسب مع احتياجات الأمان والأداء لمشروعك.
اعتبارات الأداء عند تحرير دفاتر عمل XLSX عبر REST
- إعادة استخدام كائن التكوين - إنشاء
Configurationجديد لكل طلب يضيف عبئًا. احتفظ بنسخة واحدة طوال عمر تطبيقك. - تحديث الخلايا على دفعات - إذا كنت بحاجة إلى تعديل العديد من الخلايا، اجمعها في مصفوفة وأرسل طلب تعديل واحد بدلاً من عدة استدعاءات.
- تقليل حجم ورقة العمل - الأوراق الكبيرة جدًا تزيد من استهلاك الذاكرة. فكر في تقسيم البيانات عبر عدة أوراق عندما يكون ذلك ممكنًا.
- تجنب عمليات الحفظ غير الضرورية - استدعِ
saveDocumentفقط بعد تطبيق جميع التغييرات المطلوبة لتقليل عمليات الإدخال/الإخراج.
الخلاصة
تحرير ملف Excel في Node.js عبر REST يصبح بسيطًا مع GroupDocs.Editor Cloud SDK for Node.js. يمكنك برمجيًا تحميل دفتر عمل، تعديل الخلايا، وحفظ النتيجة باستخدام عدد قليل فقط من استدعاءات API أو أوامر cURL بسيطة. تُلغي بنية SDK السحابية الحاجة إلى تثبيتات Office محلية وتتكيف مع عبء عمل تطبيقك. بالنسبة للنشر في بيئات الإنتاج، اشترِ ترخيصًا يتناسب مع نمط الاستخدام الخاص بك، ويمكنك أيضًا الحصول على ترخيص مؤقت للاختبار من صفحة الترخيص المؤقت. ابدأ بدمج تحرير Excel اليوم وسهّل خطوط معالجة البيانات الخاصة بك.
الأسئلة الشائعة
كيف يمكنني تعديل ملف Excel في Node.js عبر REST دون كتابة كود HTTP مخصص؟
استخدم GroupDocs.Editor Cloud SDK for Node.js، الذي يُجرد استدعاءات REST ويسمح لك بتعديل ملف Excel في Node.js عبر REST باستخدام استدعاءات طرق بسيطة.
هل يمكنني تحديث ورقة XLSX باستخدام REST api Node.js للملفات الكبيرة؟
نعم. يقوم SDK ببث البيانات ويدعم التحديثات الدفعية، مما يجعله مناسبًا للدفاتر الكبيرة. اضبط compressionLevel وتغييرات الخلايا الدفعية لتحسين الأداء.
ما هي أفضل طريقة لتعديل ورقة عمل Excel برمجيًا باستخدام Node.js؟
اعمل مع كائنات worksheet و cell التي تُرجعها الدالة editDocument. هذا يمنحك التحكم الكامل في الصفوف والأعمدة وقيم الخلايا دون مغادرة بيئة Node.js.
أين يمكنني العثور على معلومات التسعير والترخيص؟
جميع تفاصيل الترخيص، بما في ذلك مستويات التسعير ورخصة مؤقتة للتقييم، متاحة على صفحة الرخصة المؤقتة.
