您可以在浏览器中 无需安装传统插件 即查看 PDF、Office 文件、CAD 图纸、电子邮件和图像。对于基于 Windows 的 .NET 应用程序,Doconut 查看器 提供后端文档处理,同时用户仍然停留在业务应用中。

在接下来的章节中,我们将探讨为何移除传统插件很重要,概述 ASP.NET Core 的集成工作流,并讨论拖拽上传和 Blazor 集成,而无需依赖未经验证的 SDK 代码。
无插件:为何它们是 .NET Web 应用的游戏规则改变者
消除 “先安装” 的摩擦
传统查看器依赖 ActiveX、Java 或 Flash。这些需要权限、触发安全警报,并在现代浏览器上失效。Doconut 通过 在服务器端渲染 并向浏览器发送普通的 HTML 和图像来规避这些问题——客户端无需安装任何东西,无提示,也无需 IT 工单。
这一区别对本文的其余部分至关重要,因此值得明确说明:解析和光栅化在您的服务器上进行,而不是在用户的浏览器中。无插件意味着客户端不需要任何东西;但并不意味着工作已转移到 JavaScript 中。
保持浏览器沙箱完整
由于没有加载外部插件,浏览器的沙箱保持未受影响。更重要的是,用户的机器根本不会收到源文档——只接收渲染后的页面——因此恶意 PDF 在此端无可操作之处。
这并 不 消除攻击面;它将攻击面转移到您的服务器,在那里解析器处理不受信任的输入。请以最小权限运行,保持更新,并验证上传。传输安全、静止加密和数据保留需由您的应用实现——SDK 并未提供这些功能。
跨浏览器和设备的未来兼容性
由于浏览器只需显示标准的 HTML 和图像,浏览器更新导致的破坏几乎不存在。Chrome、Edge、Safari 或移动端 WebView 的表现都相同,没有 “插件缺失” 警告,也无需针对特定版本的变通方案——而且低性能设备也不成问题,因为渲染工作并不在其上完成。
在 ASP.NET Core 中嵌入 Doconut App 的无插件查看器
要集成查看器,需要在服务器上为文档生成一个 短期、签名的 URL 并将其传递给客户端。服务器渲染文档并通过 HTTPS 将页面流式传输到页面上的容器元素中。
服务器端工作流(概念)
- 接收文档请求。
- 从存储(SQL、Blob 等)中检索文件。
- 创建指向加密文件的限时签名 URL。
- 将该 URL 返回给 Razor 视图。
Razor 视图(概念)
让视图负责布局和已授权的查看器状态,而服务器负责检索和处理文档。仅使用已安装 Doconut 版本文档中记录的客户端资源和初始化顺序。
页面加载时,客户端通过签名 URL 请求文档并显示服务器返回的页面。无需 ActiveX、Java 或 Flash。
为何这很重要
- 无插件:客户端只需浏览器,无需其他任何东西。
- 源文件永不传递给用户:他们只收到渲染后的页面,因此不存在可转发、缓存或泄露的本地副本。
- 安全由您构建:短期签名的 URL 由您编写代码实现。查看器本身不会强制执行此行为,请将其作为设计的一部分,而非假设。
- 分页:页面按需交付,而非一次性全部加载,这使得长 PDF 或密集图纸保持可用。
在无需插件的情况下渲染受支持的格式
SDK 的引擎支持 跨 18 类共 75 种文件扩展名 —— PDF、DOCX、XLSX、PPTX、DWG、DXF、PSD、VSDX、MPP、EML、MSG、EPUB、TIFF、PNG、JPEG 等等,其中包括通过单独授权插件支持的 DICOM。免费查看器在 doconut.app 可接受其中的 73 种:除 .dcm 和 .ima 之外的全部。
引擎通过文件内容而非扩展名来识别文件,这一点比听起来更重要——大量名为 .xls 的文件实际上是 HTML 表格或 CSV。
关于保真度有一个警示,因为“像素完美”是任何渲染器都无法兑现的承诺:引用了未随文档一起包含的资源的文档,其显示效果会与作者看到的不同。未嵌入的字体会被替代,DWG 的外部引用也不在 DWG 文件内部。
拖拽上传并即时、无插件渲染
企业希望用户能够直接预览文件。您可以添加一个拖拽区域,用于上传文档、生成签名的查看 URL,并在客户端无需插件即可显示结果。整个流程都在您的 .NET 后端内部完成——这使您能够保留审计日志,因为日志记录由您自行编写。
客户端流程(概念)
- 用户将文件拖拽到指定区域。
- JavaScript 将文件发送到 ASP.NET Core 端点。
- 端点安全地存储文件并返回签名的查看 URL。
- 页面注入一个
<div>,其data‑doc‑url指向该 URL。 - Doconut App 的脚本即时渲染文档。
渲染在您的服务器上进行,因此需要做好规划:CPU 和内存消耗就在这里,并且它随并发查看者的数量而扩展,而不是随用户数量扩展。检查 SDK 将临时渲染输出写入的位置,并确保有机制清理——临时目录中的孤立文件是集成中最常被忽视的部分。
在基于 Windows 的工作流中实现一致的查看
浏览器查看器可以为内部 Windows 应用的用户提供一致的入口点,无需额外的桌面文档程序。团队应测试受支持的浏览器、屏幕尺寸、输入方式、文档复杂度以及可访问性需求,而不是假设在所有环境中行为完全相同。
使用 Blazor 扩展查看器 —— 将所有内容保持在 .NET 生态系统内
如果您的团队倾向于组件化方式,可以将查看器的客户端脚本封装在 Blazor 组件中,无论采用哪种托管模型。这使集成保持在 .NET 领域。请注意,托管模型仅影响 UI 代码的运行位置——文档渲染始终在服务器端进行。
Blazor 组件概述(概念)
- 注入一个服务,用于为给定的文件 ID 生成安全的查看 URL。
- 在初始化时,从服务请求该 URL。
- 组件渲染后,使用已安装 Doconut 版本的受支持集成 API 初始化查看器。
Blazor 组件可以协调查看器状态,而后端仍负责文档访问和处理。这样可将工作流保持在 .NET 应用内部,而无需对全局 JavaScript API 做出假设。
关键要点
- 零插件 消除安装摩擦、安全警告和兼容性问题。
- SDK 在 服务器端 渲染 75 种扩展名 —— PDF、Office、CAD、邮件和图像 —— 而非在浏览器中。
- 集成方式:在服务器端生成签名的查看 URL,并在容器中显示返回的页面。
- 拖拽上传加就地预览让用户保持在流程中。
- 在 桌面、平板和移动端 上表现一致,因为浏览器仅展示标准输出。
- Blazor 开发者可以将查看器封装为 .NET 组件。
- 安全性是架构层面的,而非功能列表:源文件从不传输到客户端,文档也永不离开您的基础设施。静态加密、签名 URL 失效和审计日志由您实现——且 Doconut 并未拥有 ISO 27001、SOC 2 或 HIPAA 认证可供依赖。
常见问题
问:我需要在客户端机器上安装任何东西吗?
答:不需要。Doconut 应用 查看器完全在浏览器中运行,使用 HTML5 和 JavaScript。用户只需使用现代浏览器——无需安装 ActiveX、Java 或 Flash。
问:它如何处理大文件?
答:页面会在需要时渲染并传输,阅读器可以直接跳转到某页,而无需等待整个文档加载。请注意,这项工作由您的服务器完成——请使用实际中最大的文件进行测试以确定规模。在免费站点 doconut.app 上,限制由我们设定,且按格式区分:PDF 为 25 MB,CAD 图纸为 10 MB。
立即开始使用 Doconut 应用
准备好在基于 Windows 的 .NET 应用中淘汰传统插件了吗?使用贵组织使用的浏览器、文档格式和工作负载来评估Doconut 软件开发工具包。