return $this->file($filename, $fileTitle);
i dopóki ten kontroler wywołuję przez link:
<a href="https://foo.pl/nk/dowloaddocument/#=doc_id#">
to po nacisnięciu linka w odpowiedzi przeglądarka zapisuje plik.
Ale chciałbym to zrobić ajaxem (by przesłać do kontrolera dodatkowe informacje w POST). Ale jak zwrócić plik po otrzymaniu odpowiedzi w ajax.success?
$.ajax({ url: URL + 'foo/' + data.doc_id, type: 'POST', dataType: 'json', data: { 'user': user, 'key': '13432342314214', }, success: function (response) { return response //window.location = URL + 'foo/' + data.doc_id; //ta metoda (stackoverflow) częściowo działa ale wysyłane są 2 żądania i nie zapisuje pliku, ale w zakładce chrome preview widzę plik } }