De nombreux développeurs ont besoin de combiner plusieurs documents Word dans Node.JS pour générer des rapports ou des packages consolidés. GroupDocs.Merger Cloud SDK for Node.js fournit une API puissante qui gère la fusion de Word côté serveur sans code de gestion de fichiers complexe. Dans ce guide, vous verrez une implémentation complète, des appels cURL équivalents, les étapes d’installation et des conseils de bonnes pratiques pour fusionner rapidement vos documents.

Combiner plusieurs documents Word dans Node.JS - Exemple de code complet

Cet exemple montre comment fusionner trois fichiers DOCX en un seul document en utilisant le 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);
    }
})();

Remarque : Cet exemple de code démontre la fonctionnalité principale. Avant de l’utiliser dans votre projet, assurez‑vous de mettre à jour les chemins de fichiers (input1.docx, combined_output.docx, etc.) pour qu’ils correspondent à vos emplacements réels, vérifiez que toutes les dépendances requises sont correctement installées et testez soigneusement dans votre environnement de développement. Si vous rencontrez des problèmes, veuillez consulter la documentation officielle ou contacter l’équipe de support pour obtenir de l’aide.

Fusion de documents Word via l’API REST en utilisant cURL

Si vous préférez une approche REST pure, la même opération de fusion peut être effectuée avec des commandes cURL. Ci-dessous se trouve un flux de travail concis qui authentifie, téléverse les fichiers source, exécute la fusion et télécharge le résultat.

1. Authentifier et obtenir le jeton d’accès

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"}'

La réponse contient un access_token utilisé dans les appels ultérieurs.

2. Téléverser les fichiers source

Répétez cette étape pour chaque fichier DOCX que vous souhaitez fusionner.

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. Exécuter l’opération de fusion

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"
}'

L’API renvoie le chemin du fichier fusionné.

4. Télécharger le document fusionné

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

Pour plus de détails sur les charges utiles de requête et les options, consultez la documentation officielle de l’API.

Comment la fusion de plusieurs documents Word en Node.JS fonctionne

Le SDK abstrait le processus de fusion en quelques étapes logiques :

  1. Création de la configuration - new GroupDocsMergerCloud.Configuration(clientId, clientSecret) construit le contexte d’authentification. Voir la référence de classe dans la Référence API.

    const config = new GroupDocsMergerCloud.Configuration(clientId, clientSecret);
    
  2. Instance d’API - new GroupDocsMergerCloud.MergeApi(config) fournit l’accès aux opérations de fusion.

    const mergeApi = new GroupDocsMergerCloud.MergeApi(config);
    
  3. Entrées de document - Chaque fichier source est encapsulé dans un DocumentEntry qui contient un FileInfo avec le chemin du fichier.

    const documentEntries = inputFiles.map(path => {
        return new GroupDocsMergerCloud.Models.DocumentEntry({
            fileInfo: new GroupDocsMergerCloud.Models.FileInfo({ filePath: path })
        });
    });
    
  4. Demande de fusion - MergeDocumentsRequest regroupe les entrées et le chemin de sortie souhaité.

    const mergeRequest = new GroupDocsMergerCloud.Models.MergeDocumentsRequest({
        documents: documentEntries,
        outputPath: outputFile
    });
    
  5. Exécution - mergeApi.mergeDocuments(mergeRequest) envoie la requête au service cloud. La promesse se résout avec un objet résultat contenant le chemin du fichier de sortie.

    const result = await mergeApi.mergeDocuments(mergeRequest);
    console.log(`Merge completed successfully. Output file: ${result.path}`);
    

Ces étapes vous permettent de combiner plusieurs documents Word efficacement sans gérer les flux de fichiers de bas niveau.

Préparer l’environnement pour GroupDocs.Merger

  1. Installez le SDK
npm install groupdocs-merger-cloud

Le package est disponible sur la page de téléchargement officielle.

  1. Node.js Version - Assurez-vous d’exécuter Node.js 12 ou une version ultérieure.

  2. Configurer les informations d’identification - Remplacez YOUR_CLIENT_ID et YOUR_CLIENT_SECRET dans le code par les valeurs de votre compte GroupDocs Cloud.

  3. Créer un dossier de projet - Placez les fichiers DOCX source dans un sous-dossier documents/ comme indiqué dans l’exemple.

Une fois ces étapes terminées, vous êtes prêt à exécuter le script de fusion ou à appeler les points de terminaison REST.

Conclusion

Combiner plusieurs documents Word dans Node.JS devient simple avec le GroupDocs.Merger Cloud SDK for Node.js. Le SDK gère le téléchargement des fichiers, la logique de fusion et la génération de la sortie, vous permettant de vous concentrer sur la logique métier plutôt que sur la manipulation de fichiers de bas niveau. N’oubliez pas d’obtenir une licence appropriée pour la production ; vous pouvez commencer avec une licence temporaire et passer à un abonnement complet à mesure que vos besoins augmentent. Commencez à fusionner dès aujourd’hui et rationalisez vos flux de travail de documents.

FAQs

  • Comment combiner plusieurs documents Word dans Node.JS en utilisant le SDK ?
    Utilisez la classe MergeApi pour créer une MergeDocumentsRequest qui répertorie chaque fichier DOCX en tant que DocumentEntry. Le SDK les fusionne dans l’ordre fourni et enregistre le résultat dans le chemin de sortie spécifié.

  • Est-il possible de fusionner des PDF ensemble avec le même SDK ?
    Oui, le Merger SDK prend en charge PDF, DOCX, ODT, et plusieurs autres formats. Il suffit de modifier les extensions de fichier dans le tableau inputFiles et le SDK gérera automatiquement la conversion. Consultez la documentation officielle pour les détails des formats.

  • Quelles sont les limites du nombre de documents que je peux fusionner dans une seule requête ?
    Le service cloud impose une limite de taille plutôt qu’un nombre strict. Tant que la taille combinée reste dans le quota de votre compte, vous pouvez fusionner des dizaines de fichiers. Pour des lots très volumineux, envisagez de télécharger les fichiers dans le stockage GroupDocs d’abord et de les référencer par ID.

  • Do I need to worry about licensing for development versus production?
    Le développement et les tests peuvent utiliser une licence temporaire obtenue depuis la page de licence temporaire. Pour les déploiements en production, achetez une licence complète pour débloquer des fusions illimitées et un support prioritaire.

Read More