«Тогда это интересно. Этот код не на стороне сервера»
Нет, это не ,
Pdf.js - это клиентская программа, написанная с помощью javascript. Так что работает на стороне javascript.
Он фактически принимает файл, который вы хотите показать, и делает все, что нужно сделать, как преобразование буфера в Uint8Array, чем визуализирует его.
Все процессы происходят на стороне javascript. Нет серверной части, нет загрузки файла.
Here статья о чтении локальных файлов в JavaScript
Вот соответствующая часть кода в pdf.viewer.js
window.addEventListener('change', function webViewerChange(evt) {
var files = evt.target.files;
if (!files || files.length === 0)
return;
// Read the local file into a Uint8Array.
var fileReader = new FileReader();
fileReader.onload = function webViewerChangeFileReaderOnload(evt) {
var buffer = evt.target.result;
var uint8Array = new Uint8Array(buffer);
PDFView.open(uint8Array, 0);
};
var file = files[0];
fileReader.readAsArrayBuffer(file);
PDFView.setTitleUsingUrl(file.name);
// URL does not reflect proper document location - hiding some icons.
document.getElementById('viewBookmark').setAttribute('hidden', 'true');
document.getElementById('download').setAttribute('hidden', 'true');
}, true);
Вы должны указать путь на языке стороне сервера, скажем, как PHP, и он пойдет туда. Иначе он просто перейдет в какую-то временную папку, если я не ошибаюсь. И этот тег должен быть частью какой-то формы. – trollster
Тогда это интересно. Этот код не имеет серверной части. –
Первое: каждый загруженный файл переходит в папку temp, а затем серверный скрипт переводит его в другую папку. Во-вторых: pdf-js использует javascript, поэтому нет необходимости в какой-либо форме;) – furas