html - 为什么 pdf 文档下载而不是显示在嵌入/iframe 中?
问题描述
我们有一个内部网站,其中有一些指向网络服务器上托管的 pdf 文档的链接。如果我打开 Chrome Dev-Tools(F12),检查链接并添加一个嵌入相同的 pdf 文档,它会下载文件而不是显示它。我已经尝试过嵌入和 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>
截屏:
如您所见,它实际上下载了文档,而不是在上面的屏幕截图中显示它。只显示一个空白。
适用于另一个文档的代码: 我刚刚在 google 上找到了一个 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>
截屏:
问题:
- 为什么这两个例子不同?为什么下载的是内部文档,但页面中显示的是外部文档?
- 我如何使它也适用于我们的网络服务器上的文件?
编辑:
解决方案
这取决于响应标头中的内容类型。您可以检查您的网络服务器是否设置了正确的标头信息,例如 Content-Type: application/pdf。
“Chrome Dev-Tools(F12)” -> 网络选项卡,检查响应标头。
推荐阅读
- javascript - 使用 JavaScript 隐藏网格项
- bash - 如何在bash中的heredoc之后使用控制运算符
- regex - 正则表达式使用特殊字符对 URL 进行编码
- python - 嵌套字典的迭代器类
- pandas - 熊猫数据框转换为表格
- c++ - OpenCV TermCriteria CV_TERMCRIT_EPS 和 TermCriteria::EPS 的区别
- reactjs - 使用 Rendertron 渲染时样式组件的产品版本问题
- amazon-ec2 - 带有 XMP 元数据的 PNG 被服务器阻止
- office-ui-fabric - 渲染一个 DetailsList 组件,其中预选了所有项目
- spring - 避免在 Spring Boot 中创建为 @Bean 的 Servlet 的自动 servlet 映射