Přidejte prohlížeč dokumentů do své vlastní aplikace ASP.NET
1. 8. 2023

Přidejte prohlížeč dokumentů do své vlastní aplikace ASP.NET

Zde jste otevírali soubory. Umístění stejného vykreslovače do vaší vlastní ASP.NET aplikace mění jednu důležitou věc: kam dokument putuje.

Na tomto webu jste vkládali soubory, abyste si je přečetli. V určitém okamžiku se někdo zeptá, zda může být totéž umístěno uvnitř aplikace, na které pracujete – soubor případu, nárok, výkres, otevřený na vaší vlastní stránce místo stažení. Lze to, a rozhodnutí je menší, než se zdá, protože se mění jen jedna věc.

ASP.NET PROHLÍŽEČ DOKUMENTŮ
ASP.NET PROHLÍŽEČ DOKUMENTŮ

Jedna věc, která se mění: kam soubor putuje

Zde nahrajete dokument k nám, ten se vykreslí a po zavření se smaže. To je správná výměna pro soubor, který vám byl jednou zaslán a chcete si ho nyní přečíst.

Je to špatná výměna pro dokument, který nemáte právo přesunout. Lékařský záznam, podepsaná smlouva, výkres pod NDA – tyto nesmí opustit vaši infrastrukturu a žádné slibování o smazání to nevyřeší, protože soubor už byl přenesen. Vložení vykreslovače to obrátí: dokument otevře váš server, uvnitř vaší sítě, a to, co dorazí do prohlížeče, je vykreslení. Soubor se nikdy nepřesune.

To je důvod pro vložení. Všechno ostatní je detail.

Je to komponenta, ne widget

První věc, kterou lidé často špatně pochopí: nejde o JavaScript, který otevírá soubor v prohlížeči. Jedná se o nativní .NET komponentu, na kterou odkazujete ve svém projektu, a vykreslování probíhá na straně serveru. Vaše stránka dostane výsledek.

Následují dva důsledky. Ten dobrý: prohlížeč nic neinstaluje – žádný plugin, žádný ActiveX, žádná čtečka – takže funguje stejně na uzamčeném počítači i na telefonu. Ten, na který je třeba se připravit: váš server vykonává práci, takže 200stránkový PDF a 40 MB výkres nejsou stejný požadavek. Přizpůsobte stroj na největší soubor, který budete akceptovat, a odmítněte vše větší při nahrávání.

Co musíte rozhodnout před zahájením

Tři otázky a žádná z nich se netýká prohlížeče:

  • Odkud dokumenty přicházejí – databáze, sdílený soubor, blob úložiště?
  • Kdo smí tento dokument vidět, a vynucuje URL prohlížeče toto omezení, nebo jen předpokládá? Renderingový endpoint, který odpovídá komukoli s ID dokumentu, je klasická díra.
  • Co se stane s dočasnými soubory, které vykreslování vytvoří, a kdy.

Odpovězte na ně a samotná integrace bude stručná. Pokud je odložíte na později, budete dodatečně přidávat autorizaci do prohlížeče, který už funguje, což je horší.

Kde běží

.NET Framework 4.0 a novější a .NET Standard 2.0 a novější – tedy WebForms, MVC, ASP.NET Core, Blazor Server a Linux kontejnery. Office nemusí být nainstalován na serveru; vykreslovač čte formáty přímo.

Pokud jste dnes chtěli přečíst jen jeden soubor, k tomu slouží PDF prohlížeč a ostatní prohlížeče zde. Pokud jde o aplikaci, o které přemýšlíte, komponenta, její balíčky a API dokumentace jsou na Doconut.com.