การอัตโนมัติการอัปเดตสเปรดชีตเป็นความต้องการทั่วไปเมื่อสร้างบริการเว็บที่ขับเคลื่อนด้วยข้อมูลหรือไพพ์ไลน์การรายงาน SDK GroupDocs.Editor Cloud SDK for Node.js ช่วยให้คุณแก้ไขไฟล์ Excel ใน Node.js ผ่าน REST ด้วยเพียงไม่กี่บรรทัดของโค้ด ในบทเรียนนี้คุณจะได้เห็นวิธีการกำหนดค่า SDK, โหลดเวิร์กบุ๊ก XLSX, แก้ไข cell, บันทึกการเปลี่ยนแปลง, และทำผลลัพธ์เดียวกันโดยใช้คำสั่ง cURL ดิบ เรายังจะพูดถึงคุณลักษณะสำคัญ, ตัวเลือกการกำหนดค่า, และข้อพิจารณาด้านประสิทธิภาพเพื่อช่วยให้คุณผสานการแก้ไข Excel อย่างมีประ效率.

แก้ไขไฟล์ Excel ใน Node.js ผ่าน REST - คู่มือ 5 ขั้นตอน

  1. ติดตั้ง SDK และกำหนดค่า credentials: ตั้งค่า 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);
  1. โหลดเวิร์กบุ๊ก Excel เพื่อแก้ไข: ใช้ EditDocumentRequest เพื่อเปิดไฟล์ที่จัดเก็บในคลาวด์สตอเรจของคุณ.
const editRequest = new GroupDocsEditorCloud.EditDocumentRequest({
    fileInfo: new GroupDocsEditorCloud.FileInfo({ filePath: "input.xlsx" })
});
const editResult = await editApi.editDocument(editRequest);
  1. ดึงเวิร์กชีตแรกและค้นหาเซลล์เป้าหมาย: SDK จะส่งคืนอ็อบเจ็กต์ document ที่มีเวิร์กชีตและเซลล์
const worksheet = editResult.document.worksheets[0];
let targetCell = worksheet.cells.find(c => c.rowIndex === 0 && c.columnIndex === 0);
  1. อัปเดตหรือสร้างค่าของเซลล์: เปลี่ยนเนื้อหาของเซลล์ 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";
}
  1. บันทึกเวิร์กบุ๊กที่แก้ไขแล้วกลับไปยังที่จัดเก็บ: ระบุ 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 แบบดิบ. เปลี่ยนค่าตัวแปรที่เป็นตัวแทนด้วยข้อมูลประจำตัวและชื่อไฟล์จริงของคุณ.

  1. รับโทเค็นการเข้าถึง
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

  1. อัปโหลดไฟล์ XLSX แหล่งที่มา
curl -X POST "https://api.groupdocs.cloud/v2.0/storage/file/input.xlsx" \
        -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
        -F "file=@input.xlsx"
  1. แก้ไขเวิร์กบุ๊ก (แก้ไขเซลล์ 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" }
               ]
           }
         }'
  1. ดาวน์โหลดไฟล์ที่แก้ไขแล้ว
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/output.xlsx" \
        -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
        -o output.xlsx

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับ payload ของคำขอ โปรดดูที่ เอกสาร API อย่างเป็นทางการ.

ข้อกำหนดเบื้องต้นและการตั้งค่าสำหรับ 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

  1. ใช้วัตถุการกำหนดค่าเดิม - การสร้าง Configuration ใหม่สำหรับทุกคำขอทำให้เกิดภาระเพิ่มขึ้น. เก็บอินสแตนซ์เดียวไว้ตลอดอายุการทำงานของแอปพลิเคชันของคุณ.
  2. อัปเดตเซลล์เป็นชุด - หากคุณต้องการแก้ไขเซลล์จำนวนมาก ให้รวบรวมไว้ในอาเรย์และส่งคำขอแก้ไขเดียวแทนการเรียกหลายครั้ง.
  3. จำกัดขนาดเวิร์กชีต - เวิร์กชีตที่มีขนาดใหญ่มากจะเพิ่มการใช้หน่วยความจำ. พิจารณาแบ่งข้อมูลเป็นหลายแผ่นเมื่อเป็นไปได้.
  4. หลีกเลี่ยงการบันทึกที่ไม่จำเป็น - เรียก saveDocument เฉพาะหลังจากที่ได้ทำการเปลี่ยนแปลงที่จำเป็นทั้งหมดแล้วเพื่อ ลดการดำเนินการ I/O.

สรุป

การแก้ไขไฟล์ 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

ฉันจะหาข้อมูลการกำหนดราคาและการให้สิทธิ์ได้จากที่ไหน?
รายละเอียดการให้สิทธิ์ทั้งหมด รวมถึงระดับราคาและใบอนุญาตชั่วคราวสำหรับการประเมิน มีให้บน หน้าการให้ใบอนุญาตชั่วคราว

อ่านเพิ่มเติม