Я создаю файл base64 pdf, мне просто нужно показать его на другой вкладке iOS Chrome.У меня есть следующий код для этого.
if (navigator.userAgent.includes('CriOS')) {
var base64PDF = base64ArrayBuffer(response.data);
var win = window.open();
win.document.write('<iframe id="myIframe" width="600" height="315" src="data:application/pdf;base64,' + base64PDF + '" frameborder="0" allowfullscreen ></iframe>');
win.document.write('<script>window.open(window.document.getElementById("myIframe").src) </script>');
} else if (navigator.userAgent.includes('iPad') || navigator.userAgent.includes('iPhone')) {
var base64PDF = base64ArrayBuffer(response.data);
window.location.assign('data:application/pdf;base64,' + base64PDF);
}
этот код позволяет мне показать PDF на iframe, но когда я это делаю, window.location.href является URL, который генерирует PDF, иURL-адрес во вкладке о: пусто.
Поэтому я решил написать скрипт в документе, который выполняет window.open с помощью src iframe, но я получаю пустую страницу в другой вкладке.
Я ищу в URL-адресе вкладки Chrome данные: application / pdf; base64, ....., которые покажут пользователю опцию "Открыть в", и у него будут такие опции, как, отправитьпо почте или по почте и т. д. На самом деле я не могу этого сделать, потому что URL-адрес примерно такой: пустая и не является действительной ссылкой PDF base64.
Я уже пробовал что-то вроде window.location, window.open, window.location.href, window.location.assign, программно создайте тег и щелкните его, чтобы изменить href, и больше ничего не произойдет, если открыть вкладку about: blank.
Когда я пытаюсь что-то наподобие window.location.href = 'data: application / pdf; base64,.....; вернуть ложь; ', Google Chrome перенаправить на новую вкладку с правильным URL-адресом, но с возвращением false;предложение в последней части или URL, чтобы сделать неправильный PDF.
Я не знаю, почему программно вы не можете открыть эти данные: приложение ..... но если вы создаете iframe, как я упоминал вначалеВ этом сообщении вы перетаскиваете iframe пальцем на другую вкладку, открыв хром data: application ...... в URL вкладки.