【发布时间】:2017-11-03 14:32:47
【问题描述】:
我在我的应用程序中使用 pdf.js 库。 它集成得非常好,除了当我尝试下载文档时。每次我下载特定文件时,它都会被下载为 document.pdf
我有很多文件要下载,这造成了一些混乱。
我的代码如下:
<iframe src="pdf_viewer/web/viewer.html?file=/docs/resumes/1b763820-e262-4f76-8502-8872a3cb52e8&filename=sample.pdf"></iframe>
我的第一个参数是文件 id,第二个参数是下载文件的名称。
以下代码是 pdf 查看器 viewer.js 文件中的代码
function getPDFFileNameFromURL(url) {
var defaultFilename = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'document.pdf';
console.log(url);
console.log(defaultFilename);
if (isDataSchema(url)) {
console.warn('getPDFFileNameFromURL: ' + 'ignoring "data:" URL for performance reasons.');
return defaultFilename;
}
var reURI = /^(?:(?:[^:]+:)?\/\/[^\/]+)?([^?#]*)(\?[^#]*)?(#.*)?$/;
var reFilename = /[^\/?#=]+\.pdf\b(?!.*\.pdf\b)/i;
var splitURI = reURI.exec(url);
var suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || reFilename.exec(splitURI[3]);
if (suggestedFilename) {
suggestedFilename = suggestedFilename[0];
if (suggestedFilename.indexOf('%') !== -1) {
try {
suggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0];
} catch (ex) {}
}
}
return suggestedFilename || defaultFilename;
}
根据我对代码的理解,我在输入方面所做的事情是正确的。我哪里出错了?
【问题讨论】:
标签: javascript string pdf url pdf.js