Я пытаюсь получить BLOB-объект в виде URL, но я получаю сообщение об ошибке в этой строке:
xhr.send()
Сообщение об ошибке: angular.js:13920 Error: Failed to execute 'send' on 'XMLHttpRequest': The object's state must be OPENED.
Но в коде я использую xhr.open('GET', blobValue)
, как показано в моем коде здесь
if(someBlobValue){
var viewerElement = $document[0].getElementById('viewer');
var myWebViewer = new PDFTron.WebViewer({
path: 'lib',
pdftronServer: 'https://demo.pdftron.com' // remove
}, viewerElement);
var xhr = new XMLHttpRequest;
xhr.responseType = 'blob';
xhr.onload = function() {
var recoveredBlob = xhr.response;
var reader = new FileReader;
reader.readAsDataURL(recoveredBlob);
};
xhr.open('GET', someBlobValue);
xhr.setRequestHeader('Content-type', 'application/pdf');
xhr.send(); //error here although its open?
//var file = new File([newValue], 'somefile.pdf');
myWebViewer.loadDocument(xhr.response, { filename: 'somefile.pdf'});
В настоящее время у меня есть документ в виде большого двоичного объекта, но я пытаюсь загрузить его в библиотеку pdftron, и, к сожалению, мне не удается найти метод myWebViewer.getInstance().loadLocalFile
в DOM (он не определен).
Буду признателен за любые указатели, так как он впервые пытается использовать pdftron в приложении angularjs.
ПРИМЕЧАНИЕ : это внутри директивы.