type =“application / pdf”的对象标签没有发出GET方法来下载PDF

时间:2015-12-01 16:17:22

标签: html html5 pdf

我正在开发一个使用<object>标记将PDF嵌入网页的应用程序。这是我正在使用的HTML:

<object data = "C:/full/path/to/some_file.pdf" type = "application/pdf" width = "100%" height = "100%">
<p>It appears you don't have a PDF plugin for this browser. 
<a href = "file:///C:/full/path/to/some_file.pdf">Click here to download the file.</a>
</p>
</object>

关于没有PDF插件的段落弹出,并且链接在那里有正确的文件路径,但是当我点击链接时没有任何反应。可能是什么导致了这个?我认为它可能是前面的“file:///”,但当我删除时,我得到的错误是“c”没有与任何程序相关联。

这是我页面的(非常!)基本结构:

<html>
<head>
...
</head>
<body>
 <div>
  <div>
   <div>
    <div>
     <iframe src = "dynamically_generated.html">
      <html>
       <head></head>
       <body>
        <object type = "application/pdf" ...></object>
       </body>
      </html>
     </iframe>
    </div>
   </div>
  </div>
 </div>
</body>
</html>

如果需要更多信息,请告知我们。谢谢!

1 个答案:

答案 0 :(得分:1)

如果问题是链接到PDF文档,那么您可以尝试将URL从绝对(意味着所有file:///c:/...)更改为相对,方法是使用..将其链接到一级比方说,HTML文件位于路径C:/full/path/to/file.html中,PDF文件与HTML文件一致(在同一文件夹中),那么您只需编写some_file.pdf而不需要完整路径{{1} }。

在Windows上,根据Wikipedia,所有这些都是本地文件的有效路径:

C:/full/path/to/some_file.pdf

前面的file://localhost/c|/WINDOWS/clock.avi file:///c|/WINDOWS/clock.avi file://localhost/c:/WINDOWS/clock.avi 很重要,因为它告诉浏览器它是本地文件而不是网站中的某个文件。

请注意,某些浏览器(Firefox included)会拒绝从网址链接到本地​​文件(从file:///开始),这样也可能会给您带来问题(有关更多信息, check this answer)。