Cześć, mam taki kod:
<script type="text/javascript">
function getDownload(name, link) {
var progressBar = document.getElementById("p");
let urlToSend = "https://" + link;
var xhr = new XMLHttpRequest();
xhr.open('GET', urlToSend, true);
xhr.setRequestHeader("Authorization", "Basic " + "<?php echo $encoded_credentials?>");
xhr.onprogress = function(pe){
$("#p").show();
if (pe.lengthComputable) {
progressBar.max = pe.total;
progressBar.value = pe.loaded;
}
};
xhr.onloadend = function(pe){
progressBar.value = pe.loaded;
$("#p").hide();
};
xhr.onload = function(){
saveAs(xhr.response, name);
};
xhr.send();
}
</script>
Po kliknięciu w przycisk wywołuję tą funkcje. Jest to pobieranie pliku z linku wraz z przesłaniem danych do zalogowania. Wszystko fajnie tylko zanim zobacze okienko gdzie zapisać plik, to jest on pobierany najpierw do przeglądarki. Co w przypadku dużych plików nie jest dobrym rozwiązaniem. W jaki sposób powinno sie to poprawnie zrobić ? Szukałem już po internecie i jak do tej pory nie trafiłem na dobre rozwiązanie. Próbowałem Ajax i XMLHttpRequest... Pliki to przeważnie zip około 1GB.