/ app / Http / Livewire / App / Downloader.php
Downloader.php
 1  <?php
 2  
 3  namespace App\Http\Livewire\App;
 4  
 5  use Illuminate\Support\Facades\Cache;
 6  use Livewire\Component;
 7  
 8  class Downloader extends Component
 9  {
10  
11      protected $listeners = [
12          'download' => 'download',
13      ];
14  
15      public function download($filename, $cacheID)
16      {
17          $data = Cache::get($cacheID);
18          Cache::forget($cacheID);
19  
20          return response()->streamDownload(function () use ($data) {
21              echo $data;
22          }, $filename);
23      }
24  
25      public function render()
26      {
27          return view('livewire.app.downloader');
28      }
29  }