andreasgal的pdf.js不使用绝对路径加载pdf。仅适用于相对路径

时间:2013-01-03 23:06:10

标签: javascript pdf.js

我正在使用javascript库使用浏览器呈现pdf文件。

这是一个: https://github.com/mozilla/pdf.js

我无法使用绝对路径作为我想要显示的PDF的路径。 Altough相对路径工作正常。

此通话不起作用:

PDFView.open("D:/Projects/Empenho/Pdf1.pdf", 0);

通过相对路径,我设法让它正常工作:

PDFView.open("https://localhost/MyPDFs/Pdf1.pdf", 0);

open()函数:

function getDocument(source) {
  var workerInitializedPromise, workerReadyPromise, transport;

  if (!source.url) 
      error('Invalid parameter array, need either .data or .url');


  workerInitializedPromise = new PDFJS.Promise();
  workerReadyPromise = new PDFJS.Promise();
  transport = new WorkerTransport(workerInitializedPromise, workerReadyPromise);

  console.log(workerReadyPromise);

  workerInitializedPromise.then(function transportInitialized() {
      transport.fetchDocument(source);
  });

  return workerReadyPromise;
};

只要系统没有良好的调试系统或良好的文档,我就无法找出问题所在。

我相信有关于workerReadyPromise的somenthing,因为我可以打印对象并在使用absolte x relative path时看到差异。 当我使用绝对路径时,workerReadyPromise状态为:

http://pbrd.co/10VGnuQ 有什么想法吗?

PS。我不确定这是否是相同的情况,但发现了这个:

Loading a pdf document using absolute path

1 个答案:

答案 0 :(得分:3)

似乎pdf.js,使用AJAX获取您指定的文件。

您不能将本地文件路径用于AJAX请求,而这似乎是您遇到问题的地方

this question的答案解释了原因。