Chrome可以直接在浏览器中打开文件(PDF等)以用于Intranet应用程序吗?

时间:2013-03-18 23:14:46

标签: asp.net-mvc google-chrome hyperlink

我的ASP.Net MVC应用程序是一个内部网应用程序,在HTML中,我将一个锚链接到存储在我们网络上的PDF文件。如果您点击链接,Chrome就无法在浏览器中打开这些文件,但是如果您从网页上复制链接并创建新标签,请粘贴该链接,它将会打开。

现在,应用程序和文件都位于同一个域中,那么如何让PDF在新标签页中自动打开?我查看了各种Chrome扩展程序,但它们似乎无法正常工作。必须有一种方法可以使用Chrome在Intranet中打开基于本地/网络的文件,请不要说我必须使用糟糕的Internet Explorer!

任何帮助都非常感激。

3 个答案:

答案 0 :(得分:0)

您是否尝试过使用HTML iframe代码来显示PDF? 例如:

<iframe id="frameID" style="border:1px solid #666CCC" title="PDF in an i-Frame" src="PDFData.pdf" frameborder="1" scrolling="auto" height="1100" width="850" ></iframe>

答案 1 :(得分:0)

对您来说已经过时了,但是我最近在ubuntu上的apache2服务器上解决了这个问题。我认为这是客户端浏览器的安全问题-这样网页就不会恶意打开客户端文件

是什么解决方案

  • 在我的Web服务器上安装网络共享驱动器
  • html指向已安装驱动器内部的pdf
  • (Apache上的可选)使用.htaccess规则来防止文件夹索引(列出所有文件/文件夹)

因此,该网页正在打开自己的文件,而不是客户端。所以firefox / chrome / et al会允许这种情况发生

答案 2 :(得分:0)

该修补程序应该在您的mvc项目中。只要确保该操作返回FileStreamResult即可。例如:

return new FileStreamResult(new FileStream(filePath, FileMode.Open), MimeMapping.GetMimeMapping(filePath));