浏覽器并不能支援word、excel檔案的線上預覽,是以都是将word、excel轉換為浏覽器能直接看的檔案格式(html、pdf、txt、png、svg、flash),是以線上預覽的原理就是背景将檔案轉化為浏覽器能直接觀看的檔案格式,然後再傳回給前端。
以下是兩個雲服務:
1.office提供雲服務
請求:http://view.officeapps.live.com/op/view.aspx?src=檔案位址(位址必須是外網位址)
請求示例:http://view.officeapps.live.com/op/view.aspx?src=http://mczaiyun.top/ht/3.docx
注意:
a> pdf的不能使用這種方式打開,因為pdf不是office檔案,可以用pdf.js來操作pdf線上預覽。
b> 若您看到錯誤“很抱歉,由于某種原因我們無法打開該檔案”,它意味着無法找到文檔或無法顯示文檔。 可能的原因包括:
- 在您提供的 URL 中無法找到任何文檔。 請確定您提供正确的 URL。
- 文檔而言太大。Word 和 PowerPoint 文檔必須小于 10 兆位元組;Excel 必須小于五個兆位元組。
- 文檔的儲存格式不是 Web 浏覽器支援打開的格式。請嘗試将您的文檔儲存為下列格式之一:
- Word: docx dotx
- Excel:xlsx、xlsb、xls、xlsm
- PowerPoint: pptx、 ppsx、 ppt、 pps、 potx、 ppsm
- 您需要登入或提供密碼才能打開該文檔。 将文檔設為可公開檢視。
-
文檔的檔案名稱包含無效字元。請嘗試編碼的檔案的名稱,當您鍵入文檔的 URL 或重命名檔案以僅使用字母和數字。
例如,要編碼的 URL,包括與号 (&),您需要鍵入%26 & 字元。有關 URL 編碼的詳細資訊,也稱為為百分比編碼,請參閱維基百科的百分比編碼。
2.xdoc提供雲服務
使用文檔:http://www.xdocin.com/web.html#func
第一步:在html頁面中引入js檔案
<script type="text/javascript" src="http://www.xdocin.com/xdoc.js"></script>
第二步:調用方法:
示例:XDoc.run("http://mczaiyun.top/ht/3.docx", "pdf", null, "_blank");
/**
* 賬号密碼
*/
XDoc.key = "";
/**
* 運作XDOC
* @param xdoc xdoc模闆,可以是xdoc、json、html或指向這些格式的url
* @param tarFormat 目标格式,可以是:flash、pdf、docx、html、png等
* @param param 其它參數,用對象方式傳遞多個參數。如果為數組,将自動轉換為_xdata處理。
* @param target 目标類型,可以是:_blank、_self等
*/
XDoc.run = function(xdoc, tarFormat, param, target) {...};
/**
* 轉換XDOC
* @param xdoc xdoc模闆,可以是xdoc、json、html或指向這些格式的url
* @param tarFormat 目标格式,可以是:flash、pdf、docx、html、png等
* @param param 其它參數,用對象方式傳遞多個參數
* @param target 目标類型,可以是:_blank、_self等
*/
XDoc.to = function(xdoc, tarFormat, param, target) {...};
/**
* Ajax方法調用
* @param func
* @param params
* @param callback(success, http, xtra) http.responseText
*/
XDoc.invoke = function(func, params, callback) {...};
(xdoc有個不好的地方就是最後會有一個xdoc的微信二維碼,下載下傳的檔案也會有)
注意:因為是上傳到别人的伺服器,是以可能會造成檔案的洩露。
參考:https://blog.csdn.net/github_35631540/article/details/86506355