2017-07-26 19 views
0

我正在使用Java Rest API上傳我的項目中的文件。基於配置我的文件要麼進入s3桶,谷歌驅動器,一個驅動器甚至在本地文件系統(在我的應用程序正在運行的同一臺機器)。在再次下載期間,我正在進行一個ajax調用,它返回文件以響應Content Disposition頭附件;和瀏覽器下載文件,而不考慮其格式。我想要一個選項來查看瀏覽器中的這些文件,而不是直接下載它。我怎樣才能做到這一點 ? (尤其是doc,xls等格式)在瀏覽器中打開文件而不是下載(包括諸如.doc,.xls等文件)

+0

任何工具去嘗試取出'內容Disposition'頭,或將其設置爲'inline' ... –

+0

那它的工作方式爲pdf文件,我主要關心的是顯示其他格式,如doc或xls文件 – Jerry

+1

如果它是'inline'(這是默認值)瀏覽器下載文件,並要求操作系統打開它,除非特殊處理內置於瀏覽器中,用於文件的MIME類型。 (就像PDF一樣)。因此,下載文件會發生什麼取決於客戶端瀏覽器和操作系統設置,已安裝的程序等... –

回答

0

據我所知,目前還沒有可以在瀏覽器中打開.doc,.docs,.xls的客戶端庫。有一種使用瀏覽器呈現您的文件的方法是使用Google文檔的查看器Microsoft Office 365查看器通過。在裏面使用這個,你可以在你的瀏覽器中打開你的文件,但是不能編輯。

谷歌文檔查看器中

<iframe src="http://docs.google.com/gview?url=http://example.com/path/to/your/document.doc&embedded=true"></iframe> 

谷歌文檔瀏覽器可點擊的鏈接<a>

<a href="http://docs.google.com/gview?url=http://example.com/path/to/your/document.doc&embedded=true">Open your doc file</a> 

的Microsoft Office 365瀏覽器

<iframe src='https://view.officeapps.live.com/op/embed.aspx?src=http://example.com/path/to/your/document.doc' width='1366px' height='623px' frameborder='0'></iframe> 
+0

當我給我的休息網址不起作用。我給的url是一個GET請求,當直接在瀏覽器中打開時,如果用戶會話在我的應用程序中處於活動狀態,則會下載該文件 – Jerry

0

瀏覽器沒有任何內置的方式來查看Word文檔,因此除非用戶將瀏覽器配置爲使用某個插件(世界上99%的瀏覽器尚未完成)來打開它,否則瀏覽器將提示他們下載文件。

但是,如果您只需顯示Word文檔,但不需要進行編輯,則可以通過Google文檔查看器顯示遠程託管的.doc/.docx文件。

<iframe src="http://docs.google.com/gview?url=http://url-of-the-file&embedded=true"></iframe> 

你可以爲你的s3文件生成temporary URL,它們是私人的。

,如果你有興趣給用戶的權限進行編輯的在線,那麼你可以像onlyoffice

相關問題