Vous disposerez d’un visualiseur de documents auto‑hébergé, ultra‑rapide, fonctionnant dans votre application .NET
À la fin de ce guide, vous pourrez ouvrir des PDFs, des fichiers Office, des dessins CAD et des dizaines d’autres formats directement dans le navigateur, avec des temps de chargement inférieurs à une seconde, sans appels SaaS externes, et un contrôle total sur la sécurité.
Prérequis
| Ce dont vous avez besoin | Pourquoi c’est important |
|---|---|
| .NET 6 ou version ultérieure (le SDK cible .NET 6+) | Garantit la compatibilité avec le SDK du Visualiseur de documents en ligne |
| Un serveur Windows ou Linux où vous pouvez exécuter votre application (sur site ou cloud privé) | L’auto‑hébergement nécessite que le visualiseur réside dans votre propre infrastructure |
| Accès au flux NuGet du Visualiseur de documents en ligne (https://doconut.com) | Le SDK est distribué sous forme de package NuGet |
| Connaissances de base d’ASP.NET Core et de JavaScript côté client | Vous exposerez un point de terminaison qui renvoie une URL signée puis lancerez le visualiseur depuis le navigateur |
| Un emplacement de stockage pour les fichiers source (système de fichiers, stockage blob, etc.) | Le visualiseur rend les fichiers à partir d’un chemin local ou réseau ; la source doit être accessible par le processus serveur |
L’absence de l’un de ces éléments empêchera la construction de progresser avant l’exécution de la première ligne de code.
Installer le SDK du Visualiseur de documents en ligne
Ouvrez votre solution dans Visual Studio ou votre IDE préféré et ajoutez le SDK officiel via le gestionnaire NuGet :
dotnet add package Doconut.NET8
Le package contient le moteur de rendu, les convertisseurs de formats et une fine couche HTTP qui sert les pages générées. Comme le SDK est compilé dans votre application, aucun service externe n’est contacté à l’exécution.
Après la restauration du package, enregistrez les services du SDK dans Program.cs (ou Startup.cs pour les modèles plus anciens). L’enregistrement injecte le pipeline de rendu dans le conteneur DI d’ASP.NET Core, le rendant disponible pour vos contrôleurs.
Configurer le pipeline de rendu pour les formats requis
Le visualiseur prend en charge plus de 50 formats dès l’installation, notamment :
- PDF, DOC, DOCX, ODT, RTF
- XLS, XLSX, CSV, ODS
- PPT, PPTX, ODP
- DWG, DXF, DGN (CAD)
- PSD, SVG, TIFF, WEBP, ICO
- EML, MSG, EPUB, MOBI, MPP, VSD
Lorsqu’une requête arrive, le SDK détermine le type de fichier et sélectionne le convertisseur approprié. Pour des performances optimales, activez la couche de cache intégrée qui stocke la page rendue en mémoire pendant la durée de la requête ; c’est ce qui procure l’expérience Ultra‑rapide – rendu instantané de documents avec des performances optimisées et un chargement en moins d’une seconde.
Dans votre contrôleur, appelez la méthode de rendu du SDK (par ex., RenderAsync) et transmettez le chemin absolu du fichier source. La méthode renvoie un fragment HTML contenant un visualiseur basé sur canvas. Comme le rendu s’effectue sur le serveur, le client ne reçoit que du balisage prêt à afficher, ce qui élimine le traitement lourd côté client.
Sécuriser le visualiseur avec des URL basées sur des jetons et des restrictions optionnelles
La souveraineté des données et la conformité au RGPD sont des préoccupations courantes pour les déploiements sur site. Le SDK s’intègre au système d’authentification d’ASP.NET Core, vous permettant de générer un jeton signé qui accorde un accès unique à un document spécifique.
Flux typique :
- Le front‑end demande à votre API un jeton d’aperçu, en fournissant l’identifiant du document.
- Votre API valide les permissions de l’utilisateur, crée un jeton de type JWT qui encode le chemin du fichier et un horodatage d’expiration, puis renvoie le jeton.
- Le front‑end ajoute le jeton à l’URL du visualiseur (par ex.,
/viewer?token=…). Le SDK valide le jeton à chaque requête et rejette tout jeton altéré ou expiré.
Si vous devez empêcher les utilisateurs de télécharger ou d’imprimer le document, configurez les options de rendu fournies par le SDK pour désactiver ces actions. La couche JavaScript du visualiseur masquera alors le bouton « Télécharger », supprimera le raccourci d’impression et bloquera le menu contextuel du clic droit.
Vérifier que tout fonctionne
- Accédez à la page qui héberge le visualiseur.
- Le document doit apparaître en moins d’une seconde, avec des barres de défilement, des contrôles de zoom et une zone de recherche.
- Si vous avez configuré le visualiseur pour désactiver le téléchargement, le bouton « Télécharger » doit être masqué.
- Un clic droit sur le document ne doit pas ouvrir le menu contextuel du navigateur lorsque cette restriction est activée.
- Après l’expiration du jeton (par défaut 5 minutes), actualiser la page doit renvoyer une erreur « 401 Non autorisé », confirmant que la validation du jeton est active.
Si l’un de ces contrôles échoue, revenez à l’étape correspondante : enregistrement du SDK manquant, génération de jeton incorrecte ou indicateurs de sécurité omis.
