เปรียบเทียบเอกสาร Word โดยใช้ REST API ใน Node.js

ในฐานะนักพัฒนา Node.js คุณสามารถเปรียบเทียบเอกสาร Word สองฉบับขึ้นไปได้อย่างง่ายดายสำหรับความเหมือนและความแตกต่างบนระบบคลาวด์โดยทางโปรแกรม สามารถช่วยคุณติดตามการเปลี่ยนแปลงในเอกสาร Word เดียวกันหรือเอกสารที่แตกต่างกันในเวอร์ชันต่างๆ ในบทความนี้ คุณจะได้เรียนรู้วิธีเปรียบเทียบเอกสาร Word ตั้งแต่สองเอกสารขึ้นไปโดยใช้ REST API ใน Node.js

หัวข้อต่อไปนี้จะครอบคลุมในบทความนี้:

REST API และ Node.js SDK เพื่อเปรียบเทียบเอกสาร Word

สำหรับการเปรียบเทียบไฟล์ DOCX สองไฟล์ขึ้นไป เราจะใช้ API ของ Node.js SDK ของ GroupDocs.Comparison Cloud ช่วยให้คุณสามารถเปรียบเทียบเอกสารตั้งแต่สองเอกสารขึ้นไป และค้นหาความแตกต่างในไฟล์ผลลัพธ์ คุณสามารถผสานรวม SDK ‎เข้ากับแอปพลิเคชัน Node.js ‎ที่มีอยู่ของคุณได้อย่างง่ายดาย เพื่อเปรียบเทียบเอกสาร สเปรดชีต ‎งานนำเสนอ ‎ไดอะแกรม ‎Visio อีเมล และไฟล์ของ รูปแบบอื่นๆ ที่รองรับอีกมากมาย

คุณสามารถติดตั้ง GroupDocs.Comparison Cloud ลงในแอปพลิเคชัน Node.js โดยใช้คำสั่งต่อไปนี้ในคอนโซล:

npm install groupdocs-comparison-cloud

โปรด รับรหัสลูกค้าและข้อมูลลับจากแดชบอร์ด ก่อนทำตามขั้นตอนดังกล่าว เมื่อคุณมี ID และรหัสลับของคุณแล้ว ให้เพิ่มรหัสตามที่แสดงด้านล่าง:

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const config = new groupdocs_comparison_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

เปรียบเทียบไฟล์ Word สองไฟล์โดยใช้ REST API ใน Node.js

คุณสามารถเปรียบเทียบเอกสาร Word ของคุณโดยทางโปรแกรมโดยทำตามขั้นตอนง่าย ๆ ด้านล่าง:

  1. อัปโหลด ไฟล์ DOCX ไปยังคลาวด์
  2. เปรียบเทียบไฟล์ Word โดยใช้ Node.js
  3. ดาวน์โหลด ไฟล์ DOCX ที่เป็นผลลัพธ์

อัปโหลดไฟล์ DOCX

ประการแรก อัปโหลดไฟล์ DOCX ต้นทางและเป้าหมายไปยังคลาวด์โดยใช้ตัวอย่างโค้ดต่อไปนี้:

// สร้าง FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
let resourcesFolder = 'C:\\Files\\comparison\\uploads\\';

fs.readdir(resourcesFolder, (err, files) => {
  files.forEach(file => {
    console.log(file);
    fs.readFile(resourcesFolder + file, (err, fileStream) => {
      let request = new groupdocs_comparison_cloud.UploadFileRequest(file, fileStream, myStorage);
      fileApi.uploadFile(request);
    });
  });
});

ด้วยเหตุนี้ ไฟล์ DOCX ที่อัปโหลดจะอยู่ใน ส่วนไฟล์ ของแดชบอร์ดของคุณบนระบบคลาวด์

เปรียบเทียบไฟล์ Word โดยใช้ Node.js

คุณสามารถเปรียบเทียบเอกสาร Word สองฉบับโดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  • ขั้นแรก สร้างอินสแตนซ์ของ CompareApi
  • จากนั้น สร้างอินสแตนซ์ของ FileInfo และตั้งค่าพาธไฟล์ DOCX อินพุตต้นทาง
  • จากนั้น สร้างอินสแตนซ์อื่นของ FileInfo และตั้งค่าเส้นทางไฟล์ DOCX อินพุตเป้าหมาย
  • หลังจากนั้น สร้างอินสแตนซ์ของ ComparisonOptions และกำหนดไฟล์ต้นทางและเป้าหมาย
  • จากนั้น ตั้งค่าพาธของไฟล์เอาต์พุต
  • จากนั้น สร้าง ComparisonsRequest ด้วย ComparisonOptions
  • สุดท้าย รับผลลัพธ์โดยเรียกเมธอด CompareApi.comparisons() ด้วย ComparisonsRequest

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเปรียบเทียบไฟล์ Word สองไฟล์โดยใช้ REST API ใน Node.js

// เริ่มต้น API
let เปรียบเทียบApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// ไฟล์ต้นฉบับ
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// ไฟล์เป้าหมาย
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";

// กำหนดตัวเลือกการเปรียบเทียบ
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "เปรียบเทียบd/result_เปรียบเทียบOptions.docx";

// สร้างคำขอเปรียบเทียบ
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// เปรียบเทียบ
let response = await เปรียบเทียบApi.comparisons(request);
console.log("Output file link: " + response.href);
ไฟล์ต้นทางและเป้าหมาย

ไฟล์ต้นทางและเป้าหมาย

เปรียบเทียบไฟล์ Word สองไฟล์โดยใช้ REST API ใน Node.js

เปรียบเทียบไฟล์ Word สองไฟล์โดยใช้ REST API ใน Node.js

ดาวน์โหลดไฟล์ผลลัพธ์

ตัวอย่างโค้ดด้านบนจะบันทึกความแตกต่างในไฟล์ DOCX ที่สร้างขึ้นใหม่บนคลาวด์ คุณสามารถดาวน์โหลดได้โดยใช้ตัวอย่างโค้ดต่อไปนี้:

// สร้าง FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);

// สร้างคำขอดาวน์โหลดไฟล์
let request = new groupdocs_comparison_cloud.DownloadFileRequest("compared/result_compareOptions.docx", myStorage);

// ดาวน์โหลดไฟล์
let response = await fileApi.downloadFile(request);

// บันทึกในไดเร็กทอรีการทำงาน
fs.writeFile("C:\\Files\\comparison\\result_compareOptions.docx", response, "binary", function (err) { });

เปรียบเทียบไฟล์ DOCX หลายไฟล์โดยใช้ Node.js

คุณสามารถเปรียบเทียบเอกสาร Word หลายฉบับโดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  • ขั้นแรก สร้างอินสแตนซ์ของ CompareApi
  • จากนั้น สร้างอินสแตนซ์ของ FileInfo และตั้งค่าพาธไฟล์ DOCX อินพุตต้นทาง
  • จากนั้น สร้างอินสแตนซ์อื่นของ FileInfo และตั้งค่าเส้นทางไฟล์ DOCX อินพุตเป้าหมาย
  • ทำซ้ำขั้นตอนด้านบนเพื่อเพิ่มไฟล์เป้าหมายหลายไฟล์
  • หลังจากนั้น สร้างอินสแตนซ์ของ ComparisonOptions และกำหนดไฟล์ต้นทางและเป้าหมาย
  • จากนั้น ตั้งค่าพาธของไฟล์เอาต์พุต
  • จากนั้น สร้าง ComparisonsRequest ด้วย ComparisonOptions
  • สุดท้าย รับผลลัพธ์โดยเรียกเมธอด CompareApi.comparisons() ด้วย ComparisonsRequest

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเปรียบเทียบไฟล์ Word หลายไฟล์โดยใช้ REST API ใน Node.js

// เริ่มต้น API
let เปรียบเทียบApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// ไฟล์ต้นฉบับ
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// ไฟล์เป้าหมาย 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target1.docx";

// ไฟล์เป้าหมาย 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.docx";

// กำหนดตัวเลือกการเปรียบเทียบ
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "เปรียบเทียบd/result_Multiple.docx";

// สร้างคำขอเปรียบเทียบ
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// เปรียบเทียบ
let response = await เปรียบเทียบApi.comparisons(request);
console.log("Output file link: " + response.href);

รับรายการการเปลี่ยนแปลงโดยใช้ REST API ใน Node.js

คุณสามารถรับรายการความแตกต่างที่พบทั้งหมดหลังจากเปรียบเทียบเอกสาร Word โดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  • ขั้นแรก สร้างอินสแตนซ์ของ CompareApi
  • จากนั้น สร้างอินสแตนซ์ของ FileInfo และตั้งค่าพาธไฟล์ DOCX อินพุตต้นทาง
  • จากนั้น สร้างอินสแตนซ์อื่นของ FileInfo และตั้งค่าเส้นทางไฟล์ DOCX อินพุตเป้าหมาย
  • หลังจากนั้น สร้างอินสแตนซ์ของ ComparisonOptions และกำหนดไฟล์ต้นทางและเป้าหมาย
  • จากนั้น ตั้งค่าพาธของไฟล์เอาต์พุต
  • จากนั้น สร้าง PostChangesRequest ด้วย ComparisonOptions
  • หลังจากนั้น รับผลลัพธ์โดยเรียกเมธอด CompareApi.postChanges() กับ PostChangesRequest
  • สุดท้าย แสดงการเปลี่ยนแปลงทั้งหมดทีละรายการ

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีรับรายการการเปลี่ยนแปลงโดยใช้ REST API ใน Node.js

// เริ่มต้น API
let compareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// ไฟล์ต้นฉบับ
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// ไฟล์เป้าหมาย
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";

// กำหนดตัวเลือกการเปรียบเทียบ
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "compared/result.docx";

// สร้างคำขอเปลี่ยนแปลงโพสต์
let request = new groupdocs_comparison_cloud.PostChangesRequest(options);

// โพสต์การเปลี่ยนแปลง
let changes = await compareApi.postChanges(request);

console.log("Changes count: " + changes.length);

changes.forEach(change => {
  console.log(change.id + 1 +"- Target Text: " + change.targetText + ", Text: " + change.text + ", Type: " + change.type);
});
รับรายการการเปลี่ยนแปลงโดยใช้ REST API ใน Node.js

รับรายการการเปลี่ยนแปลงโดยใช้ REST API ใน Node.js

ปรับแต่งผลลัพธ์การเปรียบเทียบโดยใช้ Node.js

คุณสามารถปรับแต่งรูปแบบการเปลี่ยนแปลงทางโปรแกรมได้ง่ายๆ โดยทำตามขั้นตอนด้านล่าง:

  • ขั้นแรก สร้างอินสแตนซ์ของ CompareApi
  • จากนั้น สร้างอินสแตนซ์ของ FileInfo และตั้งค่าพาธไฟล์ DOCX อินพุตต้นทาง
  • จากนั้น สร้างอินสแตนซ์อื่นของ FileInfo และตั้งค่าเส้นทางไฟล์ DOCX อินพุตเป้าหมาย
  • หลังจากนั้น สร้างอินสแตนซ์ของการตั้งค่าและตั้งค่าการเปรียบเทียบต่างๆ เช่น ความไวของการเปรียบเทียบ
  • จากนั้น สร้างอินสแตนซ์ของ ItemsStyle สำหรับ insertItemsStyle, deleteItemsStyle และ modifiedItemsStyle
  • จากนั้นกำหนดคุณสมบัติต่างๆ ให้กับแต่ละ ItemsStyle เช่น highlightColor, fontColor, bold, italic เป็นต้น
  • หลังจากนั้น สร้างอินสแตนซ์ของ ComparisonOptions และกำหนดไฟล์ต้นทางและเป้าหมาย
  • จากนั้น ตั้งค่าพาธของไฟล์เอาต์พุต
  • ถัดไป กำหนดการตั้งค่าให้กับ ComparisonOptions
  • หลังจากนั้น สร้าง ComparisonsRequest ด้วย ComparisonOptions
  • สุดท้าย รับผลลัพธ์โดยเรียกเมธอด CompareApi.comparisons() กับ ComparisonsRequest

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีปรับแต่งผลการเปรียบเทียบโดยใช้ REST API ใน Node.js

// เริ่มต้น API
let เปรียบเทียบApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// ไฟล์ต้นฉบับ
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// ไฟล์เป้าหมาย
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";

// กำหนดการตั้งค่าเปรียบเทียบ
let settings = new groupdocs_comparison_cloud.Settings();

// เปรียบเทียบความไว
settings.sensitivityOfComparison = 100;

// ปรับแต่งรูปแบบการเปลี่ยนแปลงสำหรับรายการที่แทรก
settings.insertedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.insertedItemsStyle.highlightColor = "14297642";
settings.insertedItemsStyle.fontColor = "16711680";
settings.insertedItemsStyle.underline = true;

// ปรับแต่งรูปแบบการเปลี่ยนแปลงสำหรับรายการที่ถูกลบ
settings.deletedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.deletedItemsStyle.fontColor = "14166746";
settings.deletedItemsStyle.bold = true;

// ปรับแต่งรูปแบบการเปลี่ยนแปลงสำหรับรายการที่เปลี่ยนแปลง
settings.changedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.changedItemsStyle.fontColor = "14320170";
settings.changedItemsStyle.italic = true;

// กำหนดตัวเลือกการเปรียบเทียบ
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "เปรียบเทียบd/result_เปรียบเทียบOptions.docx";
options.settings = settings;

// สร้างคำขอเปรียบเทียบ
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// เปรียบเทียบ
let response = await เปรียบเทียบApi.comparisons(request);
console.log("Output file link: " + response.href);

ลองออนไลน์

โปรดลองใช้เครื่องมือเปรียบเทียบ DOCX ออนไลน์ฟรีต่อไปนี้ ซึ่งพัฒนาโดยใช้ API ข้างต้น https://products.groupdocs.app/comparison/docx

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีเปรียบเทียบเอกสาร Word โดยใช้ REST API บนคลาวด์ นอกจากนี้ คุณได้เห็นวิธีการเปรียบเทียบไฟล์ DOCX หลายไฟล์โดยทางโปรแกรม บทความนี้ยังอธิบายวิธีการอัปโหลดไฟล์ DOCX ไปยังระบบคลาวด์โดยทางโปรแกรม จากนั้นดาวน์โหลดไฟล์ผลลัพธ์จากระบบคลาวด์ นอกจากนี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ GroupDocs.Comparison Cloud API โดยใช้ เอกสารประกอบ นอกจากนี้ เรายังมีส่วน การอ้างอิง API ที่ช่วยให้คุณแสดงภาพและโต้ตอบกับ API ของเราได้โดยตรงผ่านเบราว์เซอร์ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัม

ดูสิ่งนี้ด้วย