Aggiungi un visualizzatore di documenti alla tua app ASP.NET
01/08/2023

Aggiungi un visualizzatore di documenti alla tua app ASP.NET

Hai aperto file qui. Inserire lo stesso renderer nella tua app ASP.NET cambia una cosa che conta: dove va il documento.

Hai caricato file su questo sito per leggerli. A un certo punto qualcuno chiede se la stessa cosa possa vivere all'interno dell'applicazione su cui lavori — un fascicolo, una pratica, un disegno, aperti nella tua pagina invece di essere scaricati. È possibile, e la decisione è più semplice di quanto sembri, perché solo una cosa cambia davvero.

VISUALIZZATORE DOCUMENTI ASP.NET
VISUALIZZATORE DOCUMENTI ASP.NET

La cosa che cambia: dove va il file

Qui, carichi un documento su di noi, viene renderizzato e viene eliminato quando lo chiudi. È lo scambio giusto per un file che ti è stato inviato una volta e che vuoi leggere ora.

È lo scambio sbagliato per un documento che non ti appartiene spostare. Un fascicolo medico, un contratto firmato, un disegno sotto NDA — non possono lasciare la tua infrastruttura, e nessuna promessa di cancellazione risolve il problema, perché il file è comunque stato trasferito. Incorporare il renderer lo inverte: il documento è aperto dal tuo server, all'interno della tua rete, e ciò che arriva al browser è un rendering. Il file non si sposta mai.

Questo è il motivo per incorporare. Tutto il resto è un dettaglio.

È un componente, non un widget

La parte che le persone sbagliano prima: non si tratta di JavaScript che apre il file nel browser. È un componente .NET nativo che riferisci dal tuo progetto, e il rendering avviene lato server. La tua pagina riceve il risultato.

Ne seguono due conseguenze. La buona: il browser non installa nulla — nessun plugin, nessun ActiveX, nessun lettore — quindi funziona allo stesso modo su un desktop bloccato e su un telefono. Quella da pianificare: il tuo server fa il lavoro, quindi un PDF di 200 pagine e un disegno di 40 MB non sono la stessa richiesta. Dimensiona la macchina per il file più grande che accetterai e rifiuta qualsiasi cosa più grande al caricamento.

Cosa devi decidere prima di iniziare

Tre domande, e nessuna di esse riguarda il visualizzatore:

  • Da dove provengono i documenti — un database, una condivisione di file, blob storage?
  • Chi è autorizzato a vedere questo documento, e l'URL del visualizzatore lo fa rispettare o lo assume? Un endpoint di rendering che risponde a chiunque abbia l'ID del documento è il classico buco.
  • Cosa succede ai file temporanei prodotti dal rendering, e quando.

Rispondi a queste domande e l'integrazione stessa sarà breve. Rimandale a più tardi e dovrai aggiungere l'autorizzazione a un visualizzatore che funziona già, il che è peggiore.

Dove gira

.NET Framework 4.0 e successive, e .NET Standard 2.0 e successive — quindi WebForms, MVC, ASP.NET Core, Blazor Server e container Linux. Office non deve essere installato sul server; il renderer legge i formati direttamente.

Se oggi vuoi solo leggere un file, è per questo che servono il Visualizzatore PDF e gli altri visualizzatori qui. Se è l'applicazione a cui stai pensando, il componente, i suoi pacchetti e la documentazione API sono su Doconut.com.