为什么下载pdf文档而不是显示在嵌入/iframe中?

我们有一个内部网站,其中有一些指向Web服务器上托管的PDF文档的链接。如果我打开Chrome Dev-Tools(F12),检查链接并添加带有相同pdf文档的嵌入,它会下载该文件而不是显示它。我已尝试使用Embed和IFRAME,但仍然遇到同样的问题。

原码:

<a id="id2239" href="http://example.com:8080/client/attachment/filename.pdf" class="act01">filename.pdf</a>
屏幕截图:

我们要使用的代码:

<a id="id2239" href="http://example.com:8080/client/attachment/filename.pdf" class="act01">filename.pdf</a>

<div class="fgh"><embed id="fgh" src="http://example.com:8080/client/attachment/filename.pdf" type="application/pdf" width="400" height="400"></div>

截图:

如您所见,它实际上下载了文档,而不是在上面的屏幕截图中显示它。只显示一个空格。

使用其他文档的代码: 我刚刚在谷歌上找到了一份pdf文档,然后把它放到标签里,它就起作用了。它会在嵌入中显示文档,而不是下载文档。

<a id="id2239" href="http://example.com:8080/client/attachment/filename.pdf" class="act01">filename.pdf</a>

<div class="fgh"><embed id="fgh" src="http://infolab.stanford.edu/pub/papers/google.pdf" type="application/pdf" width="400" height="400"></div>

截图:

问题:

  1. 这两个例子有什么不同?为什么下载内部文档,但外部文档显示嵌入在页面中?
  2. 如何使其也与我们的Web服务器上的文件一起使用?

编辑:

pdf文档标题的屏幕快照。


解决方案

这取决于响应标头中的内容类型。您可以检查您的Web服务器是否设置了正确的头信息,例如Content-Type:Application/pdf。

&qot;Chrome Dev-Tools(F12)&Quot;->;网络选项卡,检查响应标头。

相关文章