Bandingkan Dokumen Word menggunakan REST API di Node.js

Sebagai pengembang Node.js, Anda dapat dengan mudah membandingkan dua atau lebih dokumen Word untuk kesamaan dan perbedaan secara terprogram di cloud. Ini dapat membantu Anda melacak perubahan dalam versi berbeda dari dokumen Word yang sama atau dokumen yang berbeda. Pada artikel ini, Anda akan mempelajari cara membandingkan dua atau lebih dokumen Word menggunakan REST API di Node.js.

Topik-topik berikut akan dibahas dalam artikel ini:

REST API dan Node.js SDK untuk Membandingkan Dokumen Word

Untuk membandingkan dua atau lebih file DOCX, kami akan menggunakan Node.js SDK dari GroupDocs.Comparison Cloud API. Ini memungkinkan Anda untuk membandingkan dua dokumen atau lebih dan menemukan perbedaan dalam file yang dihasilkan. Anda dapat dengan mudah mengintegrasikan SDK ke dalam aplikasi Node.js yang ada untuk membandingkan dokumen, spreadsheet, presentasi, diagram Visio, email, dan file dari banyak format lain yang didukung.

Anda dapat menginstal GroupDocs.Comparison Cloud ke aplikasi Node.js menggunakan perintah berikut di konsol:

npm install groupdocs-comparison-cloud

Harap dapatkan ID dan Rahasia Klien Anda dari dasbor sebelum mengikuti langkah-langkah yang disebutkan. Setelah Anda memiliki ID dan rahasia Anda, tambahkan kode seperti yang ditunjukkan di bawah ini:

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";

Bandingkan Dua File Word menggunakan REST API di Node.js

Anda dapat membandingkan dokumen Word Anda secara terprogram dengan mengikuti langkah-langkah sederhana yang diberikan di bawah ini:

  1. Unggah file DOCX ke Cloud
  2. Bandingkan File Word menggunakan Node.js
  3. Unduh file DOCX yang dihasilkan

Unggah File DOCX

Pertama, unggah file DOCX sumber dan target ke Cloud menggunakan contoh kode berikut:

// membangun 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);
    });
  });
});

Akibatnya, file DOCX yang diunggah akan tersedia di bagian file dasbor Anda di cloud.

Bandingkan File Word menggunakan Node.js

Anda dapat membandingkan dua dokumen Word secara terprogram dengan mengikuti langkah-langkah berikut:

  • Pertama, buat instance dari CompareApi.
  • Selanjutnya, buat instance FileInfo dan atur path file DOCX input sumber.
  • Kemudian, buat instance lain dari FileInfo dan tetapkan jalur file DOCX input target.
  • Setelah itu, buat instance ComparisonOptions dan tetapkan file sumber dan target.
  • Kemudian, atur jalur file keluaran.
  • Selanjutnya, buat ComparisonsRequest dengan ComparisonOptions.
  • Terakhir, dapatkan hasil dengan memanggil metode CompareApi.comparisons() dengan ComparisonsRequest.

Contoh kode berikut menunjukkan cara membandingkan dua file Word menggunakan REST API di Node.js.

// inisialisasi api
let membandingkanApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// sumber data
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// berkas sasaran
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";

// tentukan opsi perbandingan
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "membandingkand/result_membandingkanOptions.docx";

// membuat permintaan perbandingan
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// membandingkan
let response = await membandingkanApi.comparisons(request);
console.log("Output file link: " + response.href);
File Sumber dan Target.

File Sumber dan Target.

Bandingkan Dua File Word menggunakan REST API di Node.js

Bandingkan Dua File Word menggunakan REST API di Node.js

Unduh File Hasil

Contoh kode di atas akan menyimpan perbedaan dalam file DOCX yang baru dibuat di cloud. Anda dapat mengunduhnya menggunakan contoh kode berikut:

// membangun FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);

// buat permintaan file unduhan
let request = new groupdocs_comparison_cloud.DownloadFileRequest("compared/result_compareOptions.docx", myStorage);

// Unduh berkas
let response = await fileApi.downloadFile(request);

// simpan di direktori kerja
fs.writeFile("C:\\Files\\comparison\\result_compareOptions.docx", response, "binary", function (err) { });

Bandingkan Beberapa File DOCX menggunakan Node.js

Anda dapat membandingkan beberapa dokumen Word secara terprogram dengan mengikuti langkah-langkah berikut:

  • Pertama, buat instance dari CompareApi.
  • Selanjutnya, buat instance FileInfo dan atur path file DOCX input sumber.
  • Kemudian, buat instance lain dari FileInfo dan tetapkan jalur file DOCX input target.
  • Ulangi langkah di atas untuk menambahkan beberapa file target.
  • Setelah itu, buat instance ComparisonOptions dan tetapkan file sumber dan target.
  • Kemudian, atur jalur file keluaran.
  • Selanjutnya, buat ComparisonsRequest dengan ComparisonOptions.
  • Terakhir, dapatkan hasil dengan memanggil metode CompareApi.comparisons() dengan ComparisonsRequest

Contoh kode berikut menunjukkan cara membandingkan beberapa file Word menggunakan REST API di Node.js.

// inisialisasi api
let membandingkanApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// sumber data
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// berkas tujuan 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target1.docx";

// berkas sasaran 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.docx";

// tentukan opsi perbandingan
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "membandingkand/result_Multiple.docx";

// membuat permintaan perbandingan
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// membandingkan
let response = await membandingkanApi.comparisons(request);
console.log("Output file link: " + response.href);

Dapatkan Daftar Perubahan menggunakan REST API di Node.js

Anda bisa mendapatkan daftar lengkap perbedaan yang ditemukan setelah membandingkan dokumen Word secara terprogram dengan mengikuti langkah-langkah di bawah ini:

  • Pertama, buat instance dari CompareApi
  • Selanjutnya, buat instance FileInfo dan atur path file DOCX input sumber
  • Kemudian, buat instance lain dari FileInfo dan tetapkan jalur file DOCX input target
  • Setelah itu, buat instance ComparisonOptions dan tetapkan file sumber dan target
  • Kemudian, atur jalur file keluaran
  • Selanjutnya, buat PostChangesRequest dengan ComparisonOptions
  • Setelah itu, dapatkan hasil dengan memanggil metode CompareApi.postChanges() dengan PostChangesRequest
  • Terakhir, tampilkan semua perubahan satu per satu

Contoh kode berikut menunjukkan cara mendapatkan daftar perubahan menggunakan REST API di Node.js.

// inisialisasi api
let compareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// sumber data
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// berkas sasaran
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";

// tentukan opsi perbandingan
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "compared/result.docx";

// buat permintaan perubahan pos
let request = new groupdocs_comparison_cloud.PostChangesRequest(options);

// posting perubahan
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);
});
Dapatkan Daftar Perubahan menggunakan REST API di Node.js

Dapatkan Daftar Perubahan menggunakan REST API di Node.js

Sesuaikan Hasil Perbandingan menggunakan Node.js

Anda dapat dengan mudah menyesuaikan gaya perubahan secara terprogram dengan mengikuti langkah-langkah di bawah ini:

  • Pertama, buat instance dari CompareApi.
  • Selanjutnya, buat instance FileInfo dan atur path file DOCX input sumber.
  • Kemudian, buat instance lain dari FileInfo dan tetapkan jalur file DOCX input target.
  • Setelah itu, buat instance dari Pengaturan dan atur berbagai pengaturan perbandingan seperti sensitivitas OfComparison.
  • Selanjutnya, buat instance ItemsStyle untuk insertItemsStyle, deleteItemsStyle, danchangeItemsStyle.
  • Kemudian, atur berbagai properti untuk setiap ItemsStyle seperti highlightColor, fontColor, bold, italic, dll.
  • Setelah itu, buat instance ComparisonOptions dan tetapkan file sumber dan target.
  • Kemudian, atur jalur file keluaran.
  • Selanjutnya, tetapkan pengaturan ke ComparisonOptions
  • Setelah itu, buat ComparisonsRequest dengan ComparisonOptions.
  • Terakhir, dapatkan hasil dengan memanggil metode CompareApi.comparisons() dengan ComparisonsRequest

Contoh kode berikut menunjukkan cara menyesuaikan hasil perbandingan menggunakan REST API di Node.js.

// inisialisasi api
let membandingkanApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// sumber data
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// berkas sasaran
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";

// menentukan membandingkan pengaturan
let settings = new groupdocs_comparison_cloud.Settings();

// membandingkan sensitivitas
settings.sensitivityOfComparison = 100;

// sesuaikan gaya perubahan untuk item yang disisipkan
settings.insertedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.insertedItemsStyle.highlightColor = "14297642";
settings.insertedItemsStyle.fontColor = "16711680";
settings.insertedItemsStyle.underline = true;

// sesuaikan gaya perubahan untuk item yang dihapus
settings.deletedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.deletedItemsStyle.fontColor = "14166746";
settings.deletedItemsStyle.bold = true;

// sesuaikan gaya perubahan untuk item yang diubah
settings.changedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.changedItemsStyle.fontColor = "14320170";
settings.changedItemsStyle.italic = true;

// tentukan opsi perbandingan
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "membandingkand/result_membandingkanOptions.docx";
options.settings = settings;

// membuat permintaan perbandingan
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// membandingkan
let response = await membandingkanApi.comparisons(request);
console.log("Output file link: " + response.href);

Coba Daring

Silakan coba alat perbandingan DOCX online gratis berikut, yang dikembangkan menggunakan API di atas. https://products.groupdocs.app/comparison/docx

Kesimpulan

Pada artikel ini, Anda telah mempelajari cara membandingkan dokumen Word menggunakan REST API di cloud. Selain itu, Anda telah melihat cara membandingkan beberapa file DOCX secara terprogram. Artikel ini juga menjelaskan cara mengunggah file DOCX ke cloud secara terprogram dan kemudian mengunduh file yang dihasilkan dari Cloud. Selain itu, Anda dapat mempelajari lebih lanjut tentang GroupDocs.Comparison Cloud API menggunakan dokumentasi. Kami juga menyediakan bagian Referensi API yang memungkinkan Anda memvisualisasikan dan berinteraksi dengan API kami secara langsung melalui browser. Jika ada ambiguitas, jangan ragu untuk menghubungi kami di forum.

Lihat juga