Итак, у меня в сети работает сервер приложений Spring Boot + Vue. js. У меня также есть приложение Cordova InAppBrowser Andorid, которое показывает интерфейс.
Я должен иметь возможность использовать приложение как из реального браузера, работающего на компьютере, так и из приложения Cordova. Пока это хорошо работает.
Но: когда я хочу загрузить отформатированный текстовый файл json или любой другой файл с сервера внутри приложения Cordova, он не работает. Я прочитал много статей и других вопросов по этой теме c, но большинство из них были просто устаревшими.
Так есть ли способ достичь этого? В настоящее время мой код, который работает из браузера (мы используем Chrome), выглядит примерно так:
api({
url: url,
method: 'GET',
responseType: 'blob',
}).then((response) => {
const blob = new Blob([response.data], {type: response.data.type})
const url = window.URL.createObjectURL(blob)
let fileName = extractFilename(response)
const link = document.createElement('a')
link.href = url
link.setAttribute('download', fileName)
document.body.appendChild(link)
link.click()
link.remove()
window.URL.revokeObjectURL(url)
})