首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

iframe 嵌入 MHT 文件跨瀏覽器解決方案:伺服器端轉換策略

     編輯:程式設計綜合問答

問題本質

MHT (MIME HTML) 是微軟專有封裝格式,僅 IE 原生支援。其他瀏覽器無法直接渲染,會觸發下載。

解決架構

客戶端 iframe → 伺服器端解析 MHT → 轉換為標準 HTML → 回傳瀏覽器渲染

PHP 實作範例

<?php
// view_mht.php
$mhtPath = $_GET['file'];
$content = file_get_contents($mhtPath);
// 解析 MHT 邊界分隔符
$boundary = parseBoundary($content);
$parts = splitParts($content, $boundary);
foreach ($parts as $part) {
    if (isHtmlPart($part)) {
        echo extractHtmlBody($part);
        break;
    }
}
function parseBoundary($content) { ... }
?>

前端調用

<iframe src="view_mht.php?file=doc.mht" width="100%" height="600"></iframe>

替代方案

  • 前端使用 mht.js 解析庫(需評估完整度)
  • 批次轉換 MHT 為 HTML 存儲,犧牲即時性換取效能

核心思路:將專有格式在伺服器端標準化,客戶端無感知。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved