Můžete vložit prohlížeč dokumentů bez pluginu do aplikace ASP.NET Core, MVC nebo WebForms, aniž byste požadovali od jakéhokoli uživatele instalaci čehokoli.
Podniky, které poskytují smlouvy, výkresy nebo designové materiály, potřebují prohlížeč, který respektuje firemní bezpečnostní politiky a nikdy nenutí uživatele instalovat zastaralé pluginy prohlížeče. Doconut poskytuje .NET SDK pro prohlížeč dokumentů pro prohlížečové PDF, Office, CAD, e‑mail a obrázkové workflow. Nejedná se o hostovanou službu, kterou voláte: nainstalujete jej do vlastní aplikace a tam se vykresluje. Tento příspěvek popisuje rozhodnutí o integraci bez spoléhání se na ukázkový kód specifický pro verzi.
Nejprve jedno objasnění, protože dva produkty se snadno zaměňují. Doconut.app je bezplatný webový prohlížeč — jeden soubor, otevřený v kartě prohlížeče, po zobrazení smazaný. Není to něco, co byste vkládali. To, co vkládáte, je Doconut Viewer, SDK, a vše níže se týká právě toho.

1. Proč jsou pro .NET webové aplikace důležité bezpečnost a vykreslování bez pluginu
Moderní podniky považují každý dokument za potenciální únik dat. Když vložíte prohlížeč, který závisí na ActiveX, Flash nebo nativním klientovi, přebíráte tři rizika:
| Riziko | Dopad na vaši .NET aplikaci | Jak Doconut App to eliminuje |
|---|---|---|
| Závislost na pluginu | Uživatelé musí nainstalovat nebo povolit plugin prohlížeče, což vede k tiketům podpory a problémům s dodržováním předpisů. | Doconut běží výhradně v HTML5/Canvas, vyžaduje žádné pluginy. |
| Nešifrovaný přenos | Soubory se přenášejí přes HTTP nebo jsou uloženy v prostém textu, což porušuje GDPR, HIPAA nebo interní politiky. | SDK běží uvnitř vaší aplikace, takže transport a úložiště zůstávají pod TLS a šifrovací politikou, kterou již uplatňujete. Doconut nepřidává žádný nový krok. |
| Nekontrolovaný životní cyklus | Soubory mohou zůstávat na serveru, což zvyšuje povrch pro únik. | Uchovávání si nastavíte sami, protože dokumenty nikdy neopouštějí vaše prostředí. Dočasný výstup renderování je zapisován tam, kde to nakonfigurujete, a je vymazán podle vašeho plánu. |
Architektonický fakt, který je podstatný, je ten, že SDK je nainstalováno ve vašem vlastním prostředí a nevolá žádné servery Doconut. Nic není nahráváno k nám, takže neexistuje žádný třetí procesor, který byste museli přidat do datové mapy, ani žádná politika uchovávání dat od dodavatele, kterou byste museli sladit s vaší.
2. Připravte .NET projekt
Použijte balíček, dokumentaci a příklady, které odpovídají verzi Doconut vybrané pro projekt. Oficiální stránka ke stažení Doconut je spolehlivým výchozím bodem.
Před integrací ověřte cílový .NET runtime, zaznamenejte verzi balíčku, udržujte konfiguraci licence mimo správu verzí a začněte s reprezentativními dokumenty. ASP.NET Core, MVC a WebForms mají odlišné životní cykly aplikací, takže jejich nastavení by nemělo být považováno za identické.
3. Vytvoření zabezpečeného koncového bodu pro nahrávání – AES‑256, SSL a automatické mazání
SDK může číst dokument z fyzické cesty, proudu, pole bajtů, databáze, URL, intranetové lokace nebo poskytovatele cloudu jako S3, Azure Storage, Google Cloud nebo Dropbox. To, co by nikdy nemělo číst, je cesta vybraná prohlížečem. Vložte kontrolu autorizace mezi požadavek a dokument, ať už je zdroj jakýkoliv. Níže je běžná podoba takového koncového bodu v ASP.NET Core; stejné principy platí pro MVC a WebForms.
Server‑side workflow
- Přijmout nahraný soubor – Použijte standardní
IFormFile(neboHttpPostedFileve WebForms) k přijetí dokumentu od klienta. - Zašifrovat soubor pomocí AES‑256 – Před uložením proudu jej zašifrujte pomocí osvědčené knihovny, např.
System.Security.Cryptography.Aes. Uložte zašifrovaný blob na zabezpečené místo (např. Azure Blob Storage se zapnutým šifrováním na straně serveru, nebo S3 bucket s SSE‑AES256). - Vygenerovat krátkodobou podepsanou URL – Vytvořte URL, která je platná několik minut (např. 5 minut). URL by měla být HTTPS a obsahovat kryptografický token, který Doconut může ověřit. Většina poskytovatelů cloudového úložiště nabízí funkci „pre‑signed URL“, která tomuto požadavku vyhovuje.
- Vrátit podepsanou URL klientovi – Odešlete JSON odpověď obsahující URL. Klient předá tuto URL prohlížeči Doconut.
- Naplánovat automatické smazání – Po vypršení platnosti podepsané URL odstraní background job (Hangfire, Azure Functions atd.) zašifrovaný blob, čímž zajistí, že soubor nezůstane na serveru.
MVC / WebForms ekvivalenty
- MVC – Umístěte stejnou logiku do běžné akce kontroleru a vraťte
JsonResult. - WebForms – Implementujte handler
.ashxnebo metodu stránky, která následuje stejné kroky: přijmeRequest.Files[0], zašifruje, vygeneruje pre‑signed URL a zapíše JSON odpověď.
Jediný rozdíl je v syntaxi routování; bezpečnostní workflow zůstává identické.
4. Vykreslit dokument pomocí nainstalovaného SDK
Udržujte přístup k dokumentu na serveru a vynucujte autorizaci před zpracováním souboru nebo proudu. Přesná sekvence vykreslování a inicializace UI je specifická pro verzi; řiďte se oficiální dokumentací dodávanou s nainstalovanou verzí místo kopírování neověřeného globálního JavaScript API.
Proč to funguje pro každou verzi .NET
- ASP.NET Core Razor – Inicializace žije ve stejném view, který hostuje formulář pro nahrávání, takže je zde jen jedna stránka, o které se uvažuje.
- MVC – Použijte
@section Scriptsk vložení stejného úryvku; kontroler vrací JSON, který může MVC$.ajaxzpracovat. - WebForms – Zaregistrujte skript pomocí
ClientScript.RegisterStartupScriptpo dokončení nahrávání a poté zavolejtelaunchViewerstejným způsobem.
Vykreslování probíhá na vašem serveru a to je jeho smysl: prohlížeč dostává vykreslené stránky místo zdrojového dokumentu, což je důvod, proč se DWG nebo PSD otevřou na stroji, který nemá ani AutoCAD ani Photoshop. Přizpůsobte velikost serveru – naskenovaný PDF o 300 stránkách představuje skutečnou zátěž a nyní ji provádí vaše úroveň.
5. Přizpůsobení prohlížeče tak, aby odpovídal vašemu portálu
Podniky obvykle potřebují, aby prohlížeč vypadal jako součást produktu, ve kterém je umístěn, spíše než jako okno do cizího systému. Vzhled prohlížeče a sada ovládacích prvků, které poskytuje, jsou konfigurovatelné a dostupné možnosti závisí na nainstalované verzi.
Vezměte názvy těchto možností z dokumentace dodávané s vaší verzí, nikoli z blogového příspěvku. Konfigurační rozhraní prohlížeče jsou právě tím typem věcí, které se mezi verzemi přejmenovávají, a úryvek zkopírovaný z článku staršího o dvě verze selže způsobem, který vypadá jako problém s licencí.
Rozhodnutí, které stojí za to učinit před otevřením dokumentace, je, které ovládací prvky by měla vidět každá role. Zda uživatel může tisknout, stahovat nebo jen procházet dokument, je otázka oprávnění, na kterou vaše aplikace již zná odpověď. Nakonfigurujte prohlížeč podle této odpovědi, místo aby jste odhalili všechny ovládací prvky a doufali, že nikdo neklikne.
6. Výkon a škálovatelnost – udržet zážitek svižný
Vložení prohlížeče do vysoce navštěvovaného portálu vyvolává dva praktické problémy: čas načítání a současné vykreslování. Doconut App řeší oba okamžitě, ale můžete výkon posílit několika .NET‑specifickými triky.
| Problém | Co s tím dělat |
|---|---|
| Latence první stránky | Automatické načítání stránky umožňuje čtenáři vidět první stránku, zatímco zbytek se stále připravuje. Povolit kompresi statických souborů (app.UseResponseCompression()) a kešovat klientské assety. |
| Opakované zobrazení jednoho souboru | Často otevíraný dokument může být vykreslen jednou a podáván z kešovaného výstupu místo opakovaného vykreslování při každém požadavku. FAQ popisuje možnost .DCN právě pro tento případ. |
| Náklady na vykreslování | Vykreslování je práce serveru. Snížení rozlišení obrázku tam, kde není kritická věrnost, je největší pákou, a jde o změnu konfigurace, nikoli kódu. |
| Souběžnost | Zkontrolujte nastavení timeoutu a AutoClose při zatížení a přečtěte si příklady web farmy, než předpokládáte, že postačí jeden uzel. Omezte rychlost (rate‑limit) endpointu pro nahrávání. |
Měřte s vlastními dokumenty. 5 MB textový PDF a 5 MB sken stejné zprávy se chovají naprosto odlišně a jen jeden z nich se objeví v syntetickém benchmarku.
Klíčové poznatky
- Doconut Viewer je SDK .NET bez pluginů, které funguje s ASP.NET Core, MVC a WebForms. Vaši uživatelé nic neinstalují.
- Je nainstalováno ve vašem vlastním prostředí a neprovádí žádné volání na servery Doconut, takže dokumenty zůstávají uvnitř hranice, kterou již ovládáte.
- Bezpečnost přenosu, šifrování v klidu a uchovávání jsou nastaveny vámi, protože soubor nikdy neopustí vaši infrastrukturu. Doconut se nestane zpracovatelem ve vašem datovém mapování.
- Katalog SDK obsahuje 75 formátů souborů napříč 18 rodinami — PDF, Office, CAD, Visio, Project, e‑mail, eBook a obrázky, s DICOM prostřednictvím vlastního pluginu.
- Renderování probíhá na serveru. To umožňuje prohlížeči otevřít DWG a je také položkou, kterou je třeba dimenzovat.
- Které ovládací prvky uživatel vidí — tisk, stažení nebo pouze stránkování — by měly odpovídat oprávněním, která vaše aplikace již má.
- Vezměte názvy konfiguračních možností z dokumentace pro vaši nainstalovanou verzi, nikdy ne z článku.
Časté otázky
Q1: Instalujete něco na server?
A: Ano. Doconut Viewer je .NET SDK, které instalujete do své aplikace — začněte na stránce ke stažení a použijte balíček a dokumentaci pro verzi, kterou jste vybrali. Neexistuje žádný hostovaný endpoint k volání a nic není poskytováno z Doconut CDN.
Q2: Kdo smaže soubor po zobrazení?
A: Vy. Protože dokument a jakýkoli dočasný výstup renderování žijí ve vašem prostředí, uchovávání je nastavením ve vaší aplikaci, nikoli slibem od dodavatele. Rozhodněte, kam se dočasné soubory zapisují a co je odstraňuje, než přejdete do produkce.
Q3: Mohou uživatelé dokument vytisknout?
A: Tisk je schopnost prohlížeče a může být povolena nebo odepřena pro jednotlivé uživatele. Všimněte si, že řízený tisk je součástí samotného prohlížeče — není to jeden ze čtyř licencovaných pluginů, kterými jsou Annotation, Converter, DICOM a Search.
Q4: Může převést dokument do jiného formátu?
A: To je plugin Converter, licencovaný samostatně. Zobrazení a konverze jsou zde různé produkty a stojí za to být jasný, který z nich workflow skutečně potřebuje.
Chcete do své .NET aplikace vložit prohlížeč dokumentů bez pluginů? Začněte na stránce ke stažení Doconut — zkušební licence je zdarma. A pokud jste ve skutečnosti potřebovali jen dnes otevřít jeden soubor, Doconut.app to provede v kartě prohlížeče a po té jej smaže.