Скачать pdf используя javascript - PullRequest
0 голосов
/ 20 апреля 2020

Я уже проверил все ответы и следовал тому же. Никто из них не работал для меня. Я не могу найти проблему. Вот почему повторная публикация этого вопроса.

Код на стороне сервера:

downloadObj.documentContent = Base64.getEncoder().encode(IOUtils.toByteArray(result.InputStream))
downloadObj.mimeType = result.ResponseMimeType

Код на стороне клиента:

const binaryString = window.atob(response.documentContent);
const binaryLen = binaryString.length;
const bytes = new Uint8Array(binaryLen);
for (let i = 0; i < binaryLen; i += 1) {
  const ascii = binaryString.charCodeAt(i);
  bytes[i] = ascii;
}
const blob = new Blob([bytes], { type: response.mimeType });
const link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
link.download = 'myFileName.pdf';
link.click();

Файл загружается. Но когда я пытаюсь открыть PDF, получаю «Не удалось загрузить данные». Кроме того, попытался отредактировать файл PDF, чтобы проверить формат данных. Тексты присутствуют, как показано ниже,

1014 * Пример текста PDF (Edited в Notepad ++ - Проводы ниже текст в файле) 1018 * JVBERi0xLjcNCiX5 + prnDQo4IDAgb2JqDQo8PAovRSAzMTE1NDAKL0ggWzEzNjMgMTcxXQovTCAzMTIyMzAKL0xpbmVhcml6ZWQgMQovTiAxCi9PIDExCi9

Похоже, это не в правильном формате. Я не уверен, что мне здесь не хватает. Любая помощь / предложения будут оценены.

...