Cách Nhúng Xem PDF, Office, CAD và Hình Ảnh trong Ứng Dụng Web .NET
7/10/2026

Cách Nhúng Xem PDF, Office, CAD và Hình Ảnh trong Ứng Dụng Web .NET

Hướng dẫn từng bước để lên kế hoạch xem tài liệu nhúng an toàn cho các tệp PDF, Office, CAD, email và hình ảnh với Doconut .NET SDK.

Thêm chức năng xem tài liệu vào một ứng dụng doanh nghiệp không chỉ đơn giản là đặt một tệp PDF vào iframe. Các tệp Office, bản vẽ CAD, tệp email và hình ảnh đòi hỏi các khả năng render khác nhau, trong khi ứng dụng vẫn cần kiểm soát xác thực, lưu trữ, ủy quyền và thời gian lưu trữ.

Doconut là một SDK trình xem tài liệu .NET được thiết kế để nhúng việc render và tương tác tài liệu trong các ứng dụng web. Thay vì đưa ra một công thức mã nguồn chưa được xác thực, hướng dẫn này giải thích các quyết định tích hợp mà nhóm của bạn nên thực hiện và xác định các thành phần .NET tiêu chuẩn thường đi kèm với SDK.

Lưu trữ tài liệu an toàn được kết nối với trình xem nhúng trong một ứng dụng web .NET
Lưu trữ tài liệu an toàn được kết nối với trình xem nhúng trong một ứng dụng web .NET

Tại sao Trình Xem Nhúng lại Khác với Tải Xuống Tệp

Một endpoint tải xuống chỉ truyền tệp gốc và để trải nghiệm xem cho phần mềm bên ngoài ứng dụng của bạn. Trình xem nhúng giữ người dùng ở trong sản phẩm của bạn và có thể cung cấp một nơi nhất quán cho việc điều hướng, tìm kiếm, xem xét và các tính năng được kích hoạt khác.

Xây dựng lớp render của riêng bạn là khó khăn vì mỗi định dạng có các quy tắc riêng:

  • Các tệp PDF có thể chứa phông chữ nhúng, chú thích, biểu mẫu và bộ trang rất lớn.
  • Các tệp Word, Excel và PowerPoint đòi hỏi việc bố trí và xử lý phông chữ cẩn thận.
  • Bản vẽ CAD cần tỷ lệ chính xác, lớp và thu phóng chi tiết.
  • Các định dạng email và hình ảnh giới thiệu các tệp đính kèm, siêu dữ liệu, màu sắc và độ phân giải.

Một SDK chuyên dụng cho phép đội ngũ phát triển tập trung vào kiểm soát truy cập, quy trình công việc và trải nghiệm người dùng thay vì duy trì một bộ render riêng cho mỗi định dạng được hỗ trợ.


Bước 1: Xác Nhận Các Định Dạng và Tính Năng Cần Thiết

Bắt đầu bằng việc lập một danh mục thực tế các tệp người dùng mở. Tách các định dạng thiết yếu ra khỏi các định dạng chỉ thỉnh thoảng sử dụng, và ghi lại các mẫu đại diện để thử nghiệm.

Danh sách kiểm tra của bạn có thể bao gồm:

  • Tài liệu PDF và XPS
  • Tài liệu xử lý văn bản
  • Bảng tính
  • Bản trình chiếu
  • Bản vẽ CAD
  • Tệp email
  • Các định dạng hình ảnh phổ biến

Sau đó xác định các tính năng quan trọng cho mỗi quy trình công việc. Xem, tìm kiếm văn bản, chú thích, in và chuyển đổi là các khả năng khác nhau và có thể yêu cầu các thành phần hoặc giấy phép Doconut khác nhau.

Xem lại phạm vi sản phẩm hiện tại trên trang trình xem Doconut trước khi cam kết với một định dạng hoặc tính năng. Khả năng của sản phẩm có thể thay đổi, vì vậy các bài kiểm tra chấp nhận của bạn nên luôn là thẩm quyền cuối cùng cho các tài liệu khách hàng thực sự sử dụng.


Bước 2: Chọn Nơi Tài Liệu Nhập Vào Ứng Dụng

Một ứng dụng ASP.NET có thể nhận tài liệu từ một số nguồn được kiểm soát:

  • Một tệp tải lên được xử lý dưới dạng ASP.NET Core IFormFile
  • Vị trí tệp được bảo vệ
  • Cơ sở dữ liệu hoặc kho quản lý tài liệu
  • Lưu trữ đối tượng được truy cập bởi máy chủ
  • Dịch vụ nội bộ trả về một Stream

Quy trình xem nên sử dụng một tham chiếu tài liệu được máy chủ ủy quyền. Không đặt thông tin xác thực lưu trữ, đường dẫn tệp không giới hạn hoặc URL công cộng vĩnh viễn trong markup phía client.

Nếu người dùng tải lên tệp, hãy xác thực chúng trước khi render. Kiểm tra kích thước tệp, phần mở rộng, chữ ký tệp và bất kỳ hạn chế đặc thù kinh doanh nào. Lưu trữ định danh do máy chủ tạo ra thay vì tin vào tên tệp gốc làm đường dẫn.


Bước 3: Định Nghĩa Xác Thực và Ủy Quyền

Ứng dụng — không phải giao diện trình xem — nên quyết định ai được phép mở một tài liệu.

Trong ASP.NET Core, các cơ chế tiêu chuẩn như middleware xác thực, thuộc tính [Authorize], chính sách, claims và ủy quyền dựa trên tài nguyên có thể bảo vệ endpoint khởi tạo phiên xem. Quyết định ủy quyền nên bao gồm cả người dùng hiện tại và tài liệu được yêu cầu.

Một luồng yêu cầu bảo mật trông như sau:

  1. Người dùng yêu cầu tài liệu bằng một định danh cấp ứng dụng.
  2. Máy chủ xác thực người dùng.
  3. Máy chủ xác minh rằng người dùng có thể truy cập tài liệu cụ thể đó.
  4. Máy chủ xác định vị trí lưu trữ được bảo vệ.
  5. Trình xem chỉ nhận được thông tin cần thiết cho phiên đã ủy quyền đó.

Không bao giờ giả định rằng ẩn nút thanh công cụ là một biện pháp kiểm soát ủy quyền. Các kiểm tra truy cập phía máy chủ vẫn cần thiết ngay cả khi các điều khiển tải xuống hoặc in không được hiển thị.


Bước 4: Thêm Doconut Thông Qua Các Tài Nguyên Tích Hợp Chính Thức

Sử dụng gói và hướng dẫn cài đặt hiện tại do Doconut cung cấp. Trang tải xuống Doconut đã được xác thực cung cấp quyền truy cập vào các tài nguyên tích hợp NuGet, tài liệu, ví dụ và bản demo.

Cài đặt chính xác có thể phụ thuộc vào:

  • Loại ứng dụng ASP.NET hoặc .NET của bạn
  • Sản phẩm và plugin Doconut đã chọn
  • Phiên bản Doconut
  • Giấy phép của bạn
  • Các định dạng tài liệu và tính năng bạn bật
  • Cấu hình máy chủ Windows của bạn

Hãy làm theo tài liệu phù hợp với phiên bản đã cài đặt. Tránh sao chép các đoạn khởi tạo từ các bài blog không liên quan vì không gian tên, cấu hình, đường dẫn tài nguyên và API có thể thay đổi giữa các phiên bản.


Bước 5: Tạo Một Ranh Giới Xem Riêng Biệt

Giữ việc xem tài liệu phía sau một dịch vụ ứng dụng nhỏ thay vì gọi trực tiếp chức năng SDK trong các controller và thành phần UI.

Dịch vụ đó có thể chịu trách nhiệm:

  • Xác định định danh tài liệu đã ủy quyền
  • Mở tài liệu dưới dạng Stream được kiểm soát khi cần
  • Cung cấp cấu hình xem cần thiết
  • Giải phóng tài nguyên tệp và stream
  • Dịch các lỗi kỹ thuật thành lỗi ứng dụng an toàn
  • Ghi lại các chỉ số hoạt động mà không ghi nội dung tài liệu
  • Ghi nhận các metric hoạt động mà không ghi nội dung tài liệu

Ranh giới này giúp việc nâng cấp dễ dàng hơn và giảm rủi ro lộ chi tiết lưu trữ cho lớp trình bày. Nó cũng cung cấp cho các bài kiểm tra một vị trí rõ ràng để thay thế bằng triển khai an toàn.


Bước 6: Thiết Kế Trang Trình Xem

Trình xem cần đủ không gian để hữu ích. Một thẻ hẹp bao quanh bởi các điều khiển không liên quan sẽ khiến việc kiểm tra các bảng tính lớn và bản vẽ CAD trở nên khó khăn.

Lập kế hoạch trang quanh:

  • Chiều cao trình xem ổn định
  • Các trạng thái tải, trống và lỗi rõ ràng
  • Tiêu đề tài liệu ngắn gọn
  • Các điều khiển xung quanh có thể truy cập bằng bàn phím
  • Bố cục không ẩn các điều khiển quan trọng của trình xem
  • Cách rõ ràng để quay lại quy trình làm việc cha

Kiểm tra với tên tệp dài, số trang lớn, bảng tính rộng, bản vẽ chi tiết và các tài liệu không render được. Trạng thái lỗi không được tiết lộ đường dẫn máy chủ, dấu vết ngoại lệ hoặc URL lưu trữ.


Bước 7: Quản Lý Tệp và Dữ Liệu Tạm Thời

Xác định chính sách lưu trữ trước khi triển khai. Xem xét tệp gốc, dữ liệu render tạm thời, bộ nhớ đệm, xuất file, chú thích và log riêng biệt.

Các biện pháp bảo vệ hữu ích bao gồm:

  • Thư mục tạm thời riêng biệt với quyền hạn hạn chế
  • Tên duy nhất do máy chủ tạo
  • Dọn dẹp sau các phiên thành công và thất bại
  • Quy trình định kỳ cho các tệp tạm thời bị bỏ quên
  • Hạn ngạch lưu trữ và giám sát
  • Mã hoá khi nghỉ nếu chính sách bảo mật của bạn yêu cầu

Hãy làm cho việc dọn dẹp có thể quan sát được. Nếu việc xóa thất bại mà không có thông báo, các tệp tạm thời có thể tích tụ và trở thành vấn đề vận hành và bảo mật.


Bước 8: Cấu Hình Các Biện Pháp Bảo Vệ Sản Xuất

Việc render tài liệu có thể tiêu tốn CPU, bộ nhớ và không gian đĩa tạm thời. Bảo vệ ứng dụng bằng các giới hạn rõ ràng:

  • Kích thước tải lên tối đa
  • Số công việc render đồng thời tối đa
  • Thời gian chờ yêu cầu và xử lý
  • Giới hạn hàng đợi khi render được thực hiện bất đồng bộ
  • Hạn ngạch lưu trữ tạm thời
  • Kiểm tra sức khỏe và giám sát lỗi có cấu trúc

Đối với khối lượng công việc lớn hoặc không dự đoán được, hãy tách render ra khỏi các quy trình nhạy cảm về độ trễ. Đo lường với các tài liệu giống khách hàng thay vì chỉ dựa vào các tệp kiểm thử nhỏ.


Bước 9: Kiểm Tra Toàn Bộ Quy Trình

Một bài kiểm tra tích hợp thành công nên bao phủ hơn “trang đầu tiên đã xuất hiện”.

Kiểm tra:

  • Mọi định dạng tệp yêu cầu
  • Các tệp nhỏ, lớn, đa trang và hỏng
  • Tài liệu có phông chữ không phổ biến
  • Các tệp được bảo vệ bằng mật khẩu khi quy trình của bạn hỗ trợ
  • Người dùng được ủy quyền và không được ủy quyền
  • Các phiên xem đồng thời
  • Khởi động lại ứng dụng và các yêu cầu bị gián đoạn
  • Dọn dẹp sau thành công và thất bại
  • Các tính năng trình xem được bao gồm trong cấu hình sản phẩm đã chọn

Giữ một bộ sưu tập tài liệu kiểm thử đã được làm sạch và phiên bản hoá. Chạy lại khi nâng cấp Doconut, .NET, Windows Server, hạ tầng lưu trữ hoặc các phụ thuộc liên quan.


Danh Sách Kiểm Tra Bảo Mật

Trước khi phát hành, xác nhận rằng:

  • Mọi yêu cầu xem đều yêu cầu xác thực khi cần.
  • Ủy quyền được kiểm tra cho tài liệu cụ thể.
  • Đầu vào do người dùng kiểm soát không thể trở thành đường dẫn tệp máy chủ không giới hạn.
  • Thông tin xác thực lưu trữ không bao giờ đến client.
  • Giới hạn tải lên và xác thực được bật.
  • Các tệp tạm thời có quyền truy cập hạn chế và chính sách dọn dẹp đã được kiểm tra.
  • Log không bao gồm nội dung tài liệu, bí mật và URL nhạy cảm.
  • Thông báo lỗi hiển thị cho người dùng được làm sạch.
  • Các điều khiển trình xem có thể hỗ trợ quy trình kinh doanh của bạn, nhưng chúng không thể ngăn chặn mọi hình thức sao chép khi thông tin đã hiển thị cho người dùng được ủy quyền. Hãy sử dụng chúng cùng với các kiểm soát truy cập và chính sách bảo vệ thông tin phù hợp.

Vị Trí Của Doconut

Doconut cung cấp khả năng xem tài liệu bên trong ứng dụng .NET, trong khi ứng dụng của bạn vẫn chịu trách nhiệm về danh tính, ủy quyền, lưu trữ tệp, lưu trữ lâu dài, kiểm toán và quy trình công việc xung quanh.

Sự phân chia trách nhiệm này mang lại cho các đội .NET một con đường thực tiễn để hỗ trợ tài liệu doanh nghiệp mà không cần xây dựng nhiều engine render từ đầu. Nó cũng giữ cho các chi tiết tích hợp cụ thể của sản phẩm gắn liền với tài liệu chính thức cho phiên bản bạn triển khai.

Khám phá SDK trình xem tài liệu .NET của Doconut, sau đó sử dụng các tài nguyên tải xuống và tài liệu chính thức để đánh giá nó với các tài liệu của riêng bạn.


Kết Luận

Một trình xem tài liệu nhúng đáng tin cậy bắt đầu bằng việc xác định rõ yêu cầu định dạng và luồng tài liệu phía máy chủ an toàn. Xác thực đầu vào, ủy quyền mọi yêu cầu tài liệu, tách truy cập SDK phía sau một dịch vụ ứng dụng, lên kế hoạch dọn dẹp tệp tạm thời và kiểm tra với các tệp thực tế.

Với những nền tảng này, Doconut có thể cung cấp lớp xem cho ứng dụng web .NET dựa trên Windows của bạn trong khi đội ngũ của bạn vẫn giữ quyền kiểm soát kiến trúc ứng dụng và vòng đời tài liệu.